#新建数据库 white_jotter
create database white_jotter;
#新建user表
create table user(id int(11) unsigned NOT NULL AUTO_INCREMENT primary key, username varchar(255) DEFAULT NULL, password varchar(255) DEFAULT NULL)ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
use white_jotter;
describe user;
#插入数据
#使用数据库验证登录
1)项目相关配置
修改pom.xml
maven——>reload project
配置数据库 application.properties文件
2)创建实力类User
注解:
@Entity 表示这是一个实体类
@Table(name=“user”) 表示对应的表名是 user
@JsonIgnoreProperties({ “handler”,“hibernateLazyInitializer” })
因为是做前后端分离,而前后端数据交互用的是 json 格式。 那么 User 对象就会被转换为 json 数据。 而本项目使用 jpa 来做实体类的持久化,jpa 默认会使用 hibernate, 在 jpa 工作过程中,就会创造代理类来继承 User ,并添加 handler 和 hibernateLazyInitializer 这两个无须 json 化的属性,所以这里需要用 JsonIgnoreProperties 把这两个属性忽略掉。
3)创建dao目录,目录下创建UserDAO类
由于使用了 JPA,无需手动构建 SQL 语句,而只需要按照规范提供方法的名字即可实现对数据库的增删改查。
如 findByUsername
,就是通过 username
字段查询到对应的行,并返回给 User 类。
4)创建service目录,目录下创建UserService类
5)完善登录控制器
6)启动前后端
Q:
A:
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.5.0</version>
<scope>test</scope>
</dependency>
7)login页面输入用户名、密码,可以实现跳转到index页面