后台获取通过认证的用户名:
通过SpringSecurity认证后,获取登录的用户名:
方式一:通过SpringSecurity的域对象获取;
代码实现:SecurityContextHolder.getContext().getAuthentication().getName();
方式二:从session中获取;
由于登录的信息SpringSecurity将其放到了session中所以可以直接从session中获取;
代码实现:request.getRemoteUser();
两种方式比较
方式一:
有局限性,只有当使用SpringSecurity时才能使用该方式;
方式二:
没有局限性,就算不用SpringSecurity框架也可以通过该方式获取;
jsp页面获取通过认证的用户名:
通过SpringSecurity标签库中的标签直接获取;
a)、导入SpringSecurity的标签库;
<%@taglibprefix="security"uri="http://www.springframework.org/security/tags"%>
b)、使用SpringSecurity标签库中的标签获取登录后的用户名;(该标签展示时会变为获取的值)
代码实现:<security:authenticationproperty="principal.username"/>
网友评论