Filter

1.字符集

@WebFilter(filterName="EcodingFilter",urlPatterns="/*")

public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain) throws IOException, ServletException {
        // TODO Auto-generated method stub
        request.setCharacterEncoding("utf-8");
        response.setCharacterEncoding("utf-8");
        chain.doFilter(request,response);
    }

2.限制没有登录的用户

设置一个path文件夹,里面的页面只要登录之后才可以查看

建立一个LoginFilter用来查看session中有没有用户登录的信息,如果没有就拦截,如果有就允许登录

 

@WebFilter(filterName="LoginFilter",urlPatterns="/path/*")

public
void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { // TODO Auto-generated method stub HttpServletRequest r = (HttpServletRequest)request; HttpServletResponse res = (HttpServletResponse)response; HttpSession session = r.getSession(); String user = (String)session.getAttribute("username"); if(user != null){ chain.doFilter(request, response); }else { String msg = "没有登录"; r.setAttribute("error", msg); r.getRequestDispatcher("/PleaseLogin.jsp").forward(r, res); } }

 PleaseLogin.jsp

用来显示错误的error

<body>
    ${error }
</body>

 

posted @ 2016-08-17 16:38  式微胡不归  阅读(118)  评论(0编辑  收藏  举报