通过前面10篇文章的学习相信我们对SpringBoot已经有了一些了解那么如何来验证我们的学习成果呢当然是通过做项目来证明啦所以从这一篇开始我将会对之前自己做的.net项目用java来重写。这一篇我们来现实登录模块。
一提到登录我们首先想到的基本的功能点就有如下
输入用户名、密码、验证码。
登录成功后跳转到后台。如果未登录直接访问后台将会跳转到登录页面。
这里暂不考虑复杂的登录实现。
技术选型沿用前面用到的知识点。那么这里较之于之前的文章新用到的一个就是图片验证码一个就是权限拦截器了。
1、新建spring boot web项目具体配置信息如pom.xml所示
<?xml version="1.0" encoding="UTF-8"?>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
com.yujie
website
0.0.1-SNAPSHOT
jar
website
通用角色权限管理系统
org.springframework.boot
spring-boot-starter-parent
1.5.13.RELEASE
UTF-8
UTF-8
1.8
org.springframework.boot
spring-boot-starter-web
org.mybatis.spring.boot
mybatis-spring-boot-starter
1.3.2
mysql
mysql-connector-java
runtime
com.alibaba
druid
1.1.0
org.springframework.boot
spring-boot-starter-thymeleaf
net.sourceforge.nekohtml
nekohtml
1.9.22
com.github.pagehelper
pagehelper-spring-boot-starter
1.1.2
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-devtools
true
org.springframework.boot
spring-boot-maven-plugin
org.mybatis.generator
mybatis-generator-maven-plugin
1.3.2
${basedir}/src/main/resources/generator/generatorConfig.xml
true
true
src/main/java
**/*.xml
true
2、准备数据库、数据表。这里只用一张用户表t_user.sql
/*Navicat MySQL Data Transfer
Source Server : localhost
Source Server Version : 50717
Source Host : localhost:3306
Source Database : rightcontrol
Target Server Type : MYSQL
Target Server Version : 50717
File Encoding : 65001
Date: 2018-07-13 11:19:03*/SET FOREIGN_KEY_CHECKS=0;-- ------------------------------ Table structure for `t_user`-- ----------------------------DROP TABLE IF EXISTS `t_user`;CREATE TABLE `t_user` (
`Id` int(4) NOT NULL AUTO_INCREMENT,
`UserName` varchar(20) DEFAULT NULL COMMENT '用户名登录',
`RealName` varchar(20) DEFAULT NULL COMMENT '姓名',
`PassWord` char(32) DEFAULT NULL COMMENT '密码',
`RoleId` int(4) DEFAULT NULL COMMENT '角色ID',
`Status` bit(1) DEFAULT NULL COMMENT '状态',
`CreateOn` datetime DEFAULT NULL COMMENT '创建时间',
`UpdateOn` datetime DEFAULT NULL COMMENT '修改时间',
`CreateBy` int(4) DEFAULT NULL COMMENT '创建者',
`UpdateBy` int(4) DEFAULT NULL COMMENT '修改者',
`Gender` tinyint(4) DEFAULT NULL COMMENT '性别0男1女',
`Phone` varchar(11) DEFAULT NULL COMMENT '手机',
`Email` varchar(30) DEFAULT NULL COMMENT '邮箱',
`Remark` varchar(50) DEFAULT NULL COMMENT '备注',
`HeadShot` varchar(50) DEFAULT NULL COMMENT '头像', PRIMARY KEY (`Id`)
) ENGINE=InnoDB AUTO_INCREMENT=45 DEFAULT CHARSET=utf8;-- ------------------------------ Records of t_user-- ----------------------------INSERT INTO `t_user` VALUES ('1', 'admin', '超级管理员', 'e10adc3949ba59abbe56e057f20f883e', '1', '', '0001-01-01 00:00:00', '2018-05-12 21:47:34', '0', '1', '0', '15243641131', 'zouyujie@126.com', null, '/Upload/img/mmexport1510485826478[1]_看图王_2.jpg');INSERT INTO `t_user` VALUES ('4', 'test', 'test', 'e10adc3949ba59abbe56e057f20f883e', '12', '', '2018-04-26 10:35:56', '2018-04-29 10:36:12', '0', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('24', '3', '3', null, '1', '', '2018-04-29 08:42:00', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('25', '2', '2', null, '1', '', '2018-04-29 08:57:05', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('26', '34', '44', null, '1', '', '2018-04-29 08:58:31', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('27', '34', '3', null, '1', '', '2018-04-29 08:59:22', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('28', 'a', 'a', null, '1', '', '2018-04-29 09:04:29', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('29', 't', 't', null, '1', '', '2018-04-29 09:05:24', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('30', '44', '44', 'e10adc3949ba59abbe56e057f20f883e', '1', '', '2018-04-29 09:16:44', '0001-01-01 00:00:00', '1', null, null, null, null, null, null);INSERT INTO `t_user` VALUES ('31', '4', '4', null, '1