【发布时间】:2012-02-21 08:51:22
【问题描述】:
我正在使用 Spring MVC 和 Spring Security 版本 3.0.6.RELEASE。在我的 JSP 中获取用户名的最简单方法是什么?甚至只是用户是否登录?我可以想到几种方法:
1。使用小脚本
使用这样的脚本来确定用户是否登录:
<%=org.springframework.security.core.context.SecurityContextHolder.getContext()
.getAuthentication().getPrincipal().equals("anonymousUser")
? "false":"true"%>
不过,我不喜欢使用 scriptlet,我想在一些 <c:if> 标记中使用它,这需要将其作为页面属性放回。
2。使用 SecurityContextHolder
我可以再次使用 @Controller 中的 SecurityContextHolder 并将其放在模型上。不过,我在每个页面上都需要这个,所以我宁愿不必在每个控制器中添加这个逻辑。
我怀疑有一种更清洁的方法可以做到这一点......
【问题讨论】:
标签: java spring jsp spring-mvc spring-security