Shiro源码阅读之login功能
controller的实现
@RequestMapping("/login")
@ResponseBody
public JsonData login(@RequestBody LoginDto loginDto) throws AuthenticationException {
Subject subject = SecurityUtils.getSubject();
subject.logout();
if (!subject.isAuthenticated()) {
UsernamePasswordToken usernamePasswordToken = new UsernamePasswordToken(loginDto.getUsername(),
loginDto.getPassword());
subject.login(usernamePasswordToken);
User user = (User) SecurityUtils.getSubject().getPrincipal();
userService.update(new UpdateWrapper<User>().eq("id", user.getId()