【发布时间】:2016-02-09 13:05:18
【问题描述】:
Spring Security 版本:spring-boot-starter-security:1.3.0.RC1
注意到注释 @AuthenticationPrincipal 已被弃用。
完成同一件事的可能不同方式,并想知道这是否是在 Spring MVC 控制器中获取用户信息的正确方式。
@RequestMapping(method = RequestMethod.GET)
public String getIndex(HttpSession session, Device device, Model model, Principal principal) {
/**
* Spring Security Fetch User
*/
if (principal != null) {
String username = principal.getName();
User currentUser = userRepository.findByEmail(username);
model.addAttribute("user", currentUser.getFirstName());
}
return "view";
}
另一方面,我发现没有HttpSession session 会导致过期会话导致页面加载错误。
【问题讨论】:
标签: spring-mvc spring-security spring-boot