在Filter接口的实现类doFilter中
先取session中的登录信息,没有就直接转登录页面;有向后走

解决方案 »

  1.   

    谢谢 天堂客 。我 正在学习中,没有用过Filter,不过 查了下资料,在学习。
      

  2.   

    filter代码:
    package ...;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.UnavailableException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;public class BackLoginExamineFilter
        implements Filter
    {
        
    protected String lgoninurl = null;//检查未登陆后登陆界面
    protected FilterConfig filterConfig = null;
           
        public void destroy()
        {
          this.lgoninurl=null;
          this.filterConfig=null;
        }    public void doFilter(ServletRequest request, ServletResponse response,
                             FilterChain chain) throws IOException,
            ServletException
        {
         HttpServletRequest myrequest=(HttpServletRequest) request;
         HttpServletResponse myresponse=(HttpServletResponse) response;
         HttpSession session=myrequest.getSession();
         if (session.getAttribute("manguageuserid")==null)
         {
         myresponse.sendRedirect(this.lgoninurl);
         return;
         }        // Pass control on to the next filter
           chain.doFilter(request, response);    }    public void init(FilterConfig filterConfig) throws ServletException
        {       this.filterConfig=filterConfig;
           this.lgoninurl=filterConfig.getInitParameter("loginurl");    } }
    web.xml中
    <filter>
    <description>BackLoginExamine</description>
    <filter-name>BackLoginExamineFilter</filter-name>
    <filter-class>包路径.BackLoginExamineFilter</filter-class>
    <init-param>
    <param-name>loginurl</param-name>
    <param-value>登陆页面</param-value>
    </init-param>
    </filter>

    <filter-mapping>
    <filter-name>BackLoginExamineFilter</filter-name>
    <url-pattern>/jsp/admin/*</url-pattern>(这里为过滤admin目录下面所有文件,注意,登陆页面不要放在本目录下面)
    </filter-mapping>