day25_Struts2学习笔记_01 (4)

  package的namespace的执行顺序,如下图所示:


  示例代码:     <package name="p1" extends="struts-default" namespace="/user"> <!-- 名称空间(namespace="/user") -->
        <!-- 
        <action name="action1" class="com.itheima.web.action.Demo1Action" method="saveUser" >
            <result name="success">/success.jsp</result>
        </action> 
        -->

    </package>

    <package name="p2" extends="struts-default"> <!-- 默认的名称空间(namespace=""或者不写该属性) -->
        <action name="action2" class="com.itheima.web.action.Demo1Action" method="saveUser2" >
            <result name="success">/success.jsp</result>
        </action>
    </package>

访问::8080/day25_04_struts2_package/user/action2.action,可以找得到,查找过程:
    1、先查找名称空间/user,有/user名称空间;
    2、再在该名称空间查找动作名称action2.action,没有该动作名称;
    3、再去默认的名称空间查找,有默认的名称空间;
    4、再在该名称空间查找动作名称action2.action,有该动作名称,则执行该动作。
2、action元素: action元素:是用于定义动作名称,动作类和动作方法的映射,即配置动作用的。以及当出现不同情况时前往指定的结果视图 。
    name属性:动作的名称。和jsp页面上的请求url中的名称对应起来。注意在此处不能写.action。
    class属性:指定动作类,即动作类全名。
    method属性:指定要执行的动作方法,即动作类中的方法名称。默认是public String execute() 
{ }
        方法要求:
            1public
            2. 返回值必须是String
            3. 没有参数

    可以修改默认动作类,注意:我们一般不改
        <default-class-ref class="你自己的动作类" />
    默认的动作类是:com.opensymphony.xwork2.ActionSupport 是在struts-default.xml中定义的。
3、编写动作类的三种方式:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wppdpj.html