Spring MVC过滤器 登陆过滤
来源:互联网 发布:php项目文档 编辑:程序博客网 时间:2024/05/17 02:12
代码:
package com.uniquedu.filter;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.springframework.web.filter.OncePerRequestFilter;/** * 登录过滤 * */public class UserSessionFilter extends OncePerRequestFilter {@Overrideprotected void doFilterInternal(HttpServletRequest request,HttpServletResponse response, FilterChain filterChain)throws ServletException, IOException {// 不拦截的urlString[] notFilter = new String[] {"/index.jsp","selectExiteUser"};// 请求的urlString url = request.getRequestURI();if(url.indexOf("UniqueduHome") != -1){boolean doFilter = chek(notFilter,url);if(doFilter){Object obj = request.getSession().getAttribute("userSession");if(null==obj){// 如果session中不存在登录者实体,则弹出框提示重新登录PrintWriter out = response.getWriter();String loginPage = request.getContextPath()+"/index.jsp";StringBuilder builder = new StringBuilder();builder.append("<script type=\"text/javascript\">");builder.append("window.top.location.href='");builder.append(loginPage);builder.append("';");builder.append("</script>");out.print(builder.toString());}else {filterChain.doFilter(request, response);}}else{filterChain.doFilter(request, response);}}else{filterChain.doFilter(request, response);}}/** * @param notFilter 不拦截的url * @param url :请求的url * @return false:不拦截 * true:拦截 */public boolean chek(String[] notFilter,String url){//url以css和js结尾的不进行拦截if(url.endsWith(".css") || url.endsWith(".js")){return false;}//含有notFilter中的任何一个则不进行拦截for (String s : notFilter) {if (url.indexOf(s) != -1) {return false;}}return true;}}
web.xml中配置:
<!-- start 添加拦截器 --> <filter> <filter-name>UserSessionFilter</filter-name> <filter-class>com.uniquedu.filter.UserSessionFilter</filter-class> </filter> <filter-mapping> <filter-name>UserSessionFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!-- end 添加拦截器 -->
参考:http://blog.csdn.net/geloin/article/details/7445441
1 0
- Spring MVC过滤器 登陆过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤 .
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤
- Spring MVC过滤器-登录过滤处理 ,访问页面的权限以及是否登陆
- Spring MVC过滤器-登录过滤(未测试)
- 过滤器之登陆过滤
- spring mvc 过滤器关于AJAX的过滤验证
- MVC | 登陆过滤器
- Dialog的ID重复
- 学习OpenGL(三)绘制螺旋状图形
- UVA11800--Determine the Shape(计算几何)
- 将一个文件作为下载的形式打开【下载文件】,添加报文头context.Response.AddHeader("Content-disposition", "attachment; filename="
- 从java网络编程学起(3)
- Spring MVC过滤器 登陆过滤
- OpenStack install for RedHAT linux(概述)
- 关于Chronometer(计时器)暂停的问题
- 对比两张表中不一致的字段
- MediaPlayer播放失败,打包失败
- Equivalent of CONTAINS and LIKE in an IF statement
- 百度地图使用(1)iOS
- Eclipse中自动补全功能设置,不是只有.才会提示
- 算法 修炼 之递归