当前位置:首页 >> 行业知识库 >> 过滤器行业知识库 >> 过滤器的问题

过滤器的问题

我要过滤所有页面除了登陆页面该做过滤所有/*,过滤登陆页写谢谢
最佳答案:
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.util.List;
import java.util.ArrayList;
import java.util.StringTokenizer;
import java.io.IOException;
/**
* 用于检测用户否登陆过滤器未登录则重定向指登录页面
* <p>
* 配置参数
* <p>
* checkSessionKey 需检查 Session 保存关键字<br/> redirectURL
* 用户未登录则重定向指定页面URL包括 ContextPath<br/> notCheckURLList
* 做检查URL列表分号分开并且 URL 包括 ContextPath<br/>
*/
public class LoginFilter implements Filter {

private String redirectURL = null;
private List notCheckURLList = null;
private String sessionKey = null;
public void doFilter(ServletRequest servletRequest,
ServletResponse servletResponse, FilterChain filterChain)
throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
HttpSession session = request.getSession();
if (sessionKey == null) {
filterChain.doFilter(request, response);
return;
}
if ((!checkRequestURIIntNotFilterList(request))
&& session.getAttribute(sessionKey) == null) {
response.sendRedirect(request.getContextPath() + redirectURL);
return;
}
filterChain.doFilter(servletRequest, servletResponse);
}
public void destroy() {
notCheckURLList.clear();
}
private boolean checkRequestURIIntNotFilterList(HttpServletRequest request) {
String uri = request.getServletPath()
+ (request.getPathInfo() == null ? "" : request.getPathInfo());
return notCheckURLList.contains(uri);
}
public void init(FilterConfig filterConfig) throws ServletException {
redirectURL=....
sessionKey=.....
notCheckURLList=new ArrayList();
notCheckURLList.add("登陆页面");
notCheckURLList.add("/login.jsp");
notCheckURLList.add("登陆控制器");
}
}
用修改XML文件 XML直接完全过滤
使用过滤器 初始化时候定义 过滤页面和控制器
除了登陆页面还需要过滤 登陆控制器否则...
其 他 回 答: (共3条)
1楼
哦样用session检查session空时侯显示样了用session登陆给session赋值
2楼

只有在过滤器时处理了.如果是登击页面就让它通过.
查看更多相关问题 >>
相关过滤器行业知识库

友情链接:

首页 | 网站简介 | 采购市场 | 行业分类 | 信息投诉/删除/联系本站

手机版 | 电脑版

Copyright © 商名网

京ICP备17049264号