我在我的网络应用程序项目中使用Spring Security和Struts2。我想将记录用户的用户名值存储在<s:hidden>
字段中。那可能吗?如果没有,最好的选择是什么?
<sec:authentication property="name" />
<s:hidden name="value" value="%{name}" />
非常感谢
答案 0 :(得分:3)
您可以使用以下方式获取登录的用户名,实际上是UserDetails
个对象:
SecurityContextHolder.getContext().getAuthentication().getPrincipal();
这会返回org.springframework.security.core.userdetails.UserDetails
个对象。您可以从username
对象获取authorities
,UserDetails
。