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 LoginFilter implements Filter { public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletResponse httpResponse = (HttpServletResponse) response; HttpSession session = httpRequest.getSession(); User userBean = (User) session.getAttribute("user"); if (userBean == null) { // 当没有Session时 跳转到登陆页面 httpResponse.sendRedirect(httpRequest.getContextPath() + "/index.jsp"); } else { chain.doFilter(request, response); } } public void init(FilterConfig arg0) throws ServletException { } /* * web.xml中配置(过滤WebRoot目录下的back文件夹下的所有jsp文件): * <filter> * <filter-name>loginFilter</filter-name> * <filter-class>com.jungle.filter.LoginFilter</filter-class> * </filter> * * <filter-mapping> * <filter-name>loginFilter</filter-name> * <url-pattern>/back/*</url-pattern> * </filter-mapping> */ } class User { }