java52(Struts2--03package与action

2019-05-02  本文已影响0人  机智的老刘明同志

package元素:

        定义一个struts的包,它是把配置文件按照面向对象的思想来管理,分模块开发。

        name属性:           指定包的名称。注意:包的名称在配置文件中唯一

        extends属性:       指定当前包的父包。它是按照面向对象的思想管理的体现

        abstract属性:       把包声明成一个抽象包,抽象包就是用来继承的。只要没有action元素的包,才能被定义为抽象包

        namespace属性:  命名空间,当指定了名称空间之后,访问路径就变成了(命名空间+动作名称)。当不指定该属性时,该属性的默认值是" "


命名空间的搜索顺序:

    第一步:先去找对应的名称空间

           在指定的名称空间下找到了:就执行第二步。

           在指定的名称空间下没找到,按照名称空间结构向上追溯,一直到根名称空间,只要在任何一级找到了,执行第二步

    第二步:找动作名称

           先在指定的名称空间下。搜索对应的动作名称,找到了就执行动作类的动作方法

           在指定的名称空间下没找到对应的动作名称:前往默认的名称空间下,找动作名称(注意这里只找动作名称)


action元素:

        用于定义动作名称,动作类和动作方法的映射。以及当出现不同情况时前往指定的结果视图

        name属性:    动作的名称,和jsp页面上的请求url中的名称对应起来。注意此处不能写 .action   

        class属性:     指定动作类

        method属性: 指定要执行的动作方法     


创建动作类的三种方式:

        1 直接创建

        2 实现action接口

        3 继承ActionSupport类


默认动作类:

        默认的动作类是:ActionSupport的类,他是在Struts-default.xml的配置文件中定义。


动态方法调用配置:

    1 *代表的是动作名称,当有何动作名称相匹配的时候可以用{出现的位置}来代替

    2  动作名称!动作方法名称.action

        注意要开启struts.enable.DynamicMethodInvocationfalse   (是否允许动态方法调用)

上一篇下一篇

猜你喜欢

热点阅读