我想在我的Spring应用程序中将包含用户详细信息的User
对象设置为session。
当我想在各种JSP页面上检索登录用户的详细信息时,我想使用此会话对象。
我正在使用Spring 3和Spring Security 3
我想从我的自定义身份验证类(不是控制器)
中设置会话中的User对象我怎样才能做到这一点?
答案 0 :(得分:1)
我假设您有 UserDetailsService
类的实现。您可以从UserDetails
返回实施loadUserByUsername()
的任何User
对象。然后,此对象将自动放入HTTP会话中。然后可以使用以下方法检索它:
User user = (User)SecurityContextHolder.
getContext().getAuthentication().getPrincipal();
Spring Security会自动处理您需要的所有内容。