日期:2014-05-17 浏览次数:21041 次
public class LoginFilter implements Filter{
public void destroy() {
// TODO Auto-generated method stub
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
// TODO Auto-generated method stub
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse resp = (HttpServletResponse) response;
request.setCharacterEncoding("UTF-8");
response.setCharacterEncoding("UTF-8");
HttpSession session = req.getSession();
StringBuffer url = req.getRequestURL();
String login = (String) session.getAttribute("login");
if (login!=null) {
//如果已经等了通过
chain.doFilter(request, response);
}else if (url.indexOf("login.do")>0||url.indexOf("login.jsp")>0) {
//可以访问jsp,也可以访问login。do对应的servlet,通过
chain.doFilter(request, response);
}
else {
resp.sendRedirect("/3G/login/login.jsp");
}
}
public void init(FilterConfig filterConfig) throws ServletException {
// TODO Auto-generated method stub
}
}
------解决方案--------------------
package group3.tsims.tools; 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; public class AdminAuthorityFilter implements Filter { /* * (non-Javadoc) * @see javax.servlet.Filter#destroy() */ public void destroy() { } /* * (non-Javadoc) * @see javax.servlet.Filter#doFilter(javax.servlet.ServletRequest, javax.servlet.ServletResponse, javax.servlet.FilterChain) */ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest r