读书人

查验用户登录信息(使有Filter不过不

发布时间: 2012-12-27 10:17:10 作者: rapoo

检验用户登录信息(使有Filter,不过不完全方便)——2.0版

检测用户是否登陆的过滤器:

1). 情景: 系统中的某些页面只有在正常登陆后才可以使用,

用户请求这些页面时要检查 session 中有无该用户信息, 但在所有必要的页面加上session的判断相当麻烦的事情

2). 解决方案:编写一个用于检测用户是否登陆的过滤器, 如果用户未登录, 则重定向到指的登录页面

3). 要求:需检查的在 Session 中保存的关键字; 如果用户未登录,需重定向到指定的页面(URL不包括 ContextPath);

不做检查的URL列表(以分号分开,并且 URL 中不包括 ContextPath)都要采取可配置的方式

<!-- 配置当前 web 应用的安全信息 -->

<!-- 配置用户正常登录后, 把用户信息保存在 Session 中的关键字 -->
<context-param>
<param-name>loginSessionKey</param-name>
<param-value>LOGIN-SESSION-KEY</param-value>
</context-param>

<!-- 配置用户的登录页面 -->
<context-param>
<param-name>loginPage</param-name>
<param-value>/login/login.jsp</param-value>
</context-param>

<!-- 配置不需要受保护的 url 列表 -->
<context-param>
<param-name>uncheckedPages</param-name>
<param-value>/login/login.jsp,/login/login-process.jsp,/login/articles.jsp,/login/logout.jsp</param-value>
</context-param>


4). 具体: article1.jsp, article2.jsp, article3.jsp, article4.jsp 必须登录之后才可以访问, 而 articles.jsp,

login.jsp, login-process.jsp, logout.jsp 即使没有登录也可访问.


login.jsp



login-process.jsp



articles.jsp



logout.jsp



article1.jsp



web.xml


读书人网 >编程

热点推荐