structs2.0实战-2

3.struts.xml文件配置
------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<package name="bbb" extends="struts-default" namespace="">
<action name="user" class="com.hrh.web.UserAction">
<result name="success">user.jsp</result>
</action>
</package>
</struts>
--------------------------------
4.loginFilter.java文件
----------------------------------
package com.login;

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
{
    private static String[] excludeUrls;

    public void destroy()
    {
    // TODO Auto-generated method stub

    }

    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 (excludeUrls != null)
        {
            String url = request.getRequestURI();
            for (String u : excludeUrls)
            {
                if (u.equals(url))
                {
                    filterchain.doFilter(servletrequest, servletresponse);
                    return;
                }
            }
        }

        //验证用户是否已登陆,如果未登登转发到登陆界面
        String login = (String)session.getAttribute("login");
        if (login == null || "".equals(login))
        {
            System.out.println("用户未登陆");
            response.sendRedirect(request.getContextPath()+"mm/login.action");
        }
        //
        filterchain.doFilter(servletrequest, servletresponse);
    }

    public void init(FilterConfig config)
        throws ServletException
    {
        String str = config.getInitParameter("excute");
        excludeUrls = str.split(",");
    }

}

----------------------------------

猜你喜欢

转载自hurunhui.iteye.com/blog/1018695
今日推荐