一、package元素
1.1、作用:
在struts2的配置文件中引入了面向对象思想,使用了分包管理。易于管理动作类。便于模块化开发动作类。
1.2、属性:
name:包的名称。必须写。且必须唯一。
extends:一般情况下需要继承struts-default包,但不是必须的。不过如果不继承的话,将无法使用struts2提供的核心功能。
truts-default.xml中定义着struts-default这个包。而struts-default.xml是在我们的struts.xml加载之前加载。
abstract:把包声明为抽象包,抽象包就是用来被继承的。只要是没有元素的包,就可以声明为抽象包。
namespace:名称空间。(名称空间 + 动作名称 = 访问路径)


1.3、packege中的namespace详解
namespace的默认值:
a.不写该属性
b.写了该属性,取值是一个"".
注意:默认值不是 /
动作类的搜索顺序:

二、action元素
2.1、作用
配置动作用的。
2.2、属性:
name:动作名称
class:动作类全名。默认的动作类是:com.opensymphony.xwork2.ActionSupport是在struts-default.xml中定义的

method:动作类中的方法名称。默认是public String execute(){}
要求:
1.public的
2.返回值必须是String
3.没有参数
2.3、动作类
a.方式一:动作类就是一个POJO(Plain Old Java Object 原始的java对象),非常简单的javabean。

b.方式二:动作类实现com.opensymphony.xwork2.Action接口。
常量:给动作方法返回值用的。用常量可以使你的应用规范和统一。

c.方式三:动作类继承com.opensymphony.xwork2.ActionSupport 推荐使用

2.4、动作的访问
a.使用通配符:

升级版:

优先级:绝对匹配优先。使用通配符的按照在配置文件中的先后顺序进行匹配的。
b.动态方法调用


网友评论