目录
Mybatis-plus自动填充功能
Mybatis-plus有个自动填充的功能,可以对数据库进行更新和插入时间。
@Component 每个表都是一样的字段名
需要在MyMetaObjectHandler.java中添加注解:@Component
project项目表的外键是create_user,说明这个项目属于哪个用户的。需要显示项目信息,必须要知道用户信息。
data == userId
message == sessionId
后端对com.one.controller中
UserController.java进行修改
User loginUser = (User)subject.getPrincipal();
result = new Result("1", loginUser, sessionId);
前端修改login.html
$.cookie("sessionId", ret.message, {
expires : date
});
前端存储
- 浏览器端存储数据的依据
W3Cschool相关参考文档,两个对象:
HTML5 提供了两种在客户端存储数据的新方法:
对象名 | 作用 |
---|---|
localStorage | 没有时间限制的数据存储 |
sessionStorage | 针对一个session的数据存储,当用户关闭浏览器窗口后,数据会被删除 |
- sessionStorage.setItem(‘userId’,ret.data);
前端login.html的代码修改
let userId = ret.data;
sessionStorage.setItem("userId", userId);
用户退出功能
后端代码:
//退出功能
@GetMapping("/logout")
@ApiOperation(value="退出方法", httpMethod="GET")
public Result logout(){
Result result = null;
//从shiro退出会话
SecurityUtils.getSubject().logout();
result = new Result("1","账号未登录");
return result;
}
前端代码:
<a href="javascript:logout()">退出</a>
function logout(){
//异步请求后端
$.ajax({
url