注:不要看我的文件多,那是我的其他项目,这个项目所用的文件我会全部用红框框起来,没框的部分不用管,前端两个文件,后端一个文件
目录
首先,定义前后端交互接口
然后,创建一个SpringBoot项目
编写前端页面
登录(login.html):
主页(index.html)
编写后端代码
方法login处理逻辑:
方法getUserInfo处理逻辑:
讲解:
如何创建一个SpringBoot项目——超详细教程
在resource目录下的static目录下创建登录和主页的html页面,此处我将其分别命名为 login.html和index.html
如图红框位置:
登录页面
用户登录
用户名:
密码:
代码逻辑: 从input输入框内获取username和password参数,向后端发送post请求将参数发送过去,后端进行校验,如果后端响应为true,则说明响应成功(账号密码正确),执行回调函数,跳转页面到index.html (主页)
用户登录首页
登录人:
代码逻辑:来到该页面,立即向后端发送get请求,获取用户名username并展示到该页面上
创建Java文件,我将其命名为userController
以下是全部代码
@RequestMapping("/user")
@RestController
public class UserController {
@RequestMapping("/login")
public Boolean login(String userName, String password, HttpSession session){
// 校验参数的合法性
// if(userName == null || userName.length()==0 || password == null || password.length() == 0){
// return false;
// }
if(!StringUtils.hasLength(userName) || !StringUtils.hasLength(password)){
return false;
}
// 进行用户名和密码的校验
if("admin".equals(userName) && "admin".equals(password)){
// 设置session
session.setAttribute("username","admin");
return true;
}
return false;
}
@RequestMapping("/getUserInfo")
public String getUserInfo(HttpSession session){
// 从Session获取登录用户
String userName = (String) session.getAttribute("username");
return userName;
}
}
从session中获取username并返回给前端