Struts2笔记

Struts2是一个基于MVC设计模式的Web应用框架,(用来负责跳转)它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。

步骤
导jar包
写配置文件(Struts2.xml)

在Struts.xml配置拦截器

<package name="user" namespace="/自定义name(工作空间名)" extends="struts-default">
<interceptors>
            <interceptor name="loginterceptor" class="com.mashen.user.action.LogInterceptor"></interceptor>
            <interceptor name="loginStateInterceptor" class="com.mashen.user.action.test.LoginStateInterceptor"></interceptor>
            <interceptor name="authInterceptor" class="com.mashen.user.action.test.AuthInterceptor"></interceptor>
            <!--把上面定义好的拦截器放到下面的拦截器堆里面执行-->
            <interceptor-stack name="logStack">
                <interceptor-ref name="loginterceptor"></interceptor-ref>
                <interceptor-ref name="authInterceptor"></interceptor-ref>
                <interceptor-ref name="loginStateInterceptor"></interceptor-ref>

                <!-- 使用jar包里面的方法,一般都是不变的 -->
                <interceptor-ref name="defaultStack"></interceptor-ref>
                </interceptor-stack>
        </interceptors>

        <!--这里是配置拦截器的第一种,  -->
        <!--让所有的action都被这个拦截器拦截  -->
        <!-- 能让扫描器扫描到的类或方法,需要类或方法的上面添加注释,
        注释包括:
        @Namespace("/user")(这里要写工作空间)
        @Action("doLogin")(这里编写的是执行方法名,Action.action执行现在定义的类或方法)
@Results(
{
@Result(name="loginPage",location="login.jsp"),
    @Result(name="mainPage",location="/main.action",type="redirect")
    })(这里编写的是结果或者是结果数组,name里面编写的是方法返回结果,location则是在返回结果等于name填写的结果是执行location里面的链接)
    (location里面的值,如果是jsp则不需要在前面加"/",如果值是方法名.action,则需要在此前面加 "/")
         -->
        <default-interceptor-ref name="logStack"></default-interceptor-ref>

        <global-results>
            <result name="authError">/WEB-INF/pages/user/autherror.jsp</result>
            <result name="login" type="redirect">/user/login.action</result>
        </global-results>

        <!-- 这里是配置拦截器的第二种方法,直接定义一个action  -->
        <action name="viewUser" class="com.mashen.user.action.ViewUserAction">
            <result name="success">/WEB-INF/pages/user/view.jsp</result>
            <!--<interceptor-ref name="logStack"></interceptor-ref>-->      
        </action>
    </package>

类名必须用Action结尾,如果类名不用,则需要继承ActionSpoort
Action没有接口,servers和daoyou接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值