最近研究如果用原生的Filter来判别session存在否或者过期否。来跳转到的页面实例,下载来展示代码。

因为顾虑器是每次请求能会进入的,所以可以设置了,进行拦截判断

1.配置web.xml

	<filter>
<filter-name>BackEndFilter</filter-name>
<filter-class>com.sun.BackFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>BackFilter</filter-name>
<url-pattern>/backend/issues/*</url-pattern>
<url-pattern>/backend/repairmen/*</url-pattern>
<url-pattern>/backend/payment/*</url-pattern>
</filter-mapping>

2.新建BackFilter类,实现Filter接口。

package com.xyt.backend;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession; import com.xyt.common.Logging;
import com.xyt.common.RedisClient;
import com.xyt.jdbc.entity.Admin; /**
* 后台管理系统登录拦截器
*/
public class BackFilter implements Filter { @Override
public void init(FilterConfig filterConfig) throws ServletException {
//useless
} @Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
HttpSession sess = ((HttpServletRequest)request).getSession();
String ad = sess.getAttribute("admin");
if(ad==null ){
((HttpServletResponse)response).sendRedirect(((HttpServletRequest)request).getContextPath()+"//login");
}else{
chain.doFilter(request, response);
}
} @Override
public void destroy() {
//useless
} }

最新文章

  1. MS SQL 错误 :17883,严重度: 1,状态: 0
  2. django小结
  3. Trace-语句启动Profiler中暂停的跟踪会出现什么状况
  4. [android] 手机卫士保存密码时进行md5加密
  5. C#.net Winform获取文件路径
  6. MVP架构。。。。
  7. ASP.NET性能优化小结(ASP.NET&amp;C#)
  8. 零基础学Python 3之环境准备
  9. 字符串编码---hash函数的应用
  10. Android UI高级交互设计Demo
  11. 更新ADT到Android L的方法
  12. 为什么推荐std::string而不是char*
  13. webpack+react+redux+es6开发模式---续
  14. Sublime Text3自定义代码片段
  15. 图片验证码(Struts2中使用)
  16. Java经典编程题50道之三十八
  17. hdu1249 三角形分割平面---递推
  18. ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)
  19. hdu 4283&quot;You Are the One&quot;(区间DP)
  20. django----过滤器和自定义标签

热门文章

  1. aop注解 spring提供的事务
  2. function声明的深刻含义和jquery属性注入区别
  3. 腾讯开放平台 iOS应用URL schema、Bundle ID填写 (含微博、微信)
  4. jsp中Undefined type: xxxx...
  5. 有用的git片段
  6. eclipse容易卡死或者较慢的解决方案
  7. 【java设计模式】之 代理(Proxy)模式
  8. java中Map,List与Set的差别
  9. phpexcel单元格内换行
  10. [Jobdu] 题目1510:替换空格