首页 > 开发 > Java > 正文

Spring boot搭建web应用集成thymeleaf模板实现登陆

2024-07-13 10:13:26
字体:
来源:转载
供稿:网友

Spring boot 搭建web应用集成了thymeleaf模板实现登陆
下面是pom.xml的配置

 

<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">   <modelVersion>4.0.0</modelVersion>   <groupId>exam</groupId>   <artifactId>examSystem</artifactId>   <packaging>jar</packaging>   <version>1.0-SNAPSHOT</version>  <!--spring boot 的基本配置 -->  <parent>    <groupId>org.springframework.boot</groupId>    <artifactId>spring-boot-starter-parent</artifactId>    <version>1.2.7.RELEASE</version>  </parent>  <!--基本配置,设置编码,入口,jdk版本 -->  <properties>    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>    <start-class>com.study.App</start-class>    <java.version>1.7</java.version>    <shiro.version>1.3.0</shiro.version>  </properties>  <!-- 设置编译 -->  <build>    <plugins>      <plugin>        <groupId>org.springframework.boot</groupId>        <artifactId>spring-boot-maven-plugin</artifactId>        <dependencies>        </dependencies>      </plugin>    </plugins>  </build>  <dependencies>    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-web</artifactId>    </dependency>    <!--jpa的jar包 ,操作数据库的,类似hibernate-->    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-data-jpa</artifactId>    </dependency>    <!--thymeleaf模板jar-->    <dependency>      <groupId>org.springframework.boot</groupId>      <artifactId>spring-boot-starter-thymeleaf</artifactId>    </dependency>    <!--mysql驱动-->    <dependency>      <groupId>mysql</groupId>      <artifactId>mysql-connector-java</artifactId>    </dependency>    <!-- 添加restfull的支持 -->    <dependency>      <groupId>javax.ws.rs</groupId>      <artifactId>javax.ws.rs-api</artifactId>      <version>2.0.1</version>    </dependency>    <dependency>      <groupId>net.bull.javamelody</groupId>      <artifactId>javamelody-core</artifactId>      <version>1.53.0</version>    </dependency>    <!-- 添加 druid 数据源连接池-->    <dependency>      <groupId>com.alibaba</groupId>      <artifactId>druid</artifactId>      <version>1.0.25</version>    </dependency>    <!-- 添加权限认证-->    <dependency>      <groupId>org.apache.shiro</groupId>      <artifactId>shiro-core</artifactId>      <version>${shiro.version}</version>    </dependency>    <dependency>      <groupId>org.apache.shiro</groupId>      <artifactId>shiro-spring</artifactId>      <version>${shiro.version}</version>    </dependency>    <dependency>      <groupId>org.apache.shiro</groupId>      <artifactId>shiro-web</artifactId>      <version>${shiro.version}</version>    </dependency>    <dependency>      <groupId>org.apache.shiro</groupId>      <artifactId>shiro-ehcache</artifactId>      <version>${shiro.version}</version>    </dependency>    <!--thymeleaf 和 shiro 的整合 -->    <dependency>      <groupId>com.github.theborakompanioni</groupId>      <artifactId>thymeleaf-extras-shiro</artifactId>      <version>1.2.1</version>    </dependency>  </dependencies></project>

主入口main方法

import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.EnableAutoConfiguration;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.boot.context.web.SpringBootServletInitializer;import org.springframework.context.annotation.ComponentScan;import org.springframework.context.annotation.Configuration;/** * Created by on 2016/12/8. */@Configuration@ComponentScan@EnableAutoConfigurationpublic class App extends SpringBootServletInitializer {  public static void main(String[] args) {    SpringApplication.run(App.class, args);  }}

登陆页提交表单代码,

 <form class="form-signin" role="form" th:action="@{/user/login}" th:method="post">    <input type="text" class="form-control" placeholder="用户名" required="required" name="userName" />    <input type="password" class="form-control" placeholder="密码" required="required" name="passwprd" />    <button class="btn btn-lg btn-warning btn-block" type="submit">登录</button>    <label class="checkbox">      <input type="checkbox" value="remember-me" /> 记住我    </label>  </form>

Controller 代码

package com.study.system.contrller;import com.study.model.contrller.BaseContrller;import com.study.model.po.User;import com.study.system.services.UserServices;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;import java.util.List;/** * * 用户管理 * Created by on 2016/12/12. */@Controller@RequestMapping(value = "/user")public class UserContrller extends BaseContrller {  @RequestMapping(value="/login",method= RequestMethod.POST)  public String login(User user){    try{      if(userServices.hasUser(user)){        return "redirect:/user/index";      }else{        return "redirect:/";      }    }catch (Exception e){      logger.error("登陆失败:"+e,e);    }    return "redirect:/";  }  @RequestMapping(value="/index",method= RequestMethod.GET)  public String index(){    try{    }catch (Exception e){      logger.error("登陆失败:"+e,e);    }    return "page/index/index";  }  @Autowired  private UserServices userServices;}

其中 UserServices 为业务接口。BaseContrller为自己封装的Controller基类。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VeVb武林网。


注:相关教程知识阅读请移步到JAVA教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表