1.constant
<!--修改请求的后缀,多个后缀之间以英文的逗号相隔-->
<constant name="struts.action.extension" value="do"/>
//开发模式:
<!--当配置修改后,系统是否默认加载配置文件,默认是false-->
<!--<constant name="struts.configuration.xml.reload" value="true"/>-->
<!--如果有devMode就不用写上面的那一句了-->
<constant name="struts.devMode" value="true"/>
2. package元素
这个package元素下有几个搭配使用的属性:
name: 必须要有的. 配置文件中要唯一,一个名字 不可重复
extends: 不是必须得. 指定父包.会把父包中的配置内容继承下来. 一般需要直接或间接的继承一个叫做"struts-default"的包(该包在struts-default.xml配置文件中),如果不继承该包,那么struts2中的核心功能无法使用,所以一般都要继承这个父包
abstract:是否是抽象包,没有任何action子元素的package可以声明为抽象包
namespace:指定名称空间
有关命名空间的图解
3.acttion
作用:定义一个动作
属性:
name:必须的. 动作名称,用户发起请求,在包中要唯一.
class: 指定动作类的全名.框架会通过反射机制去实例化.不写 默认是 com.opensymphony.xwork2.ActionSupport.
method:指定动作类中的动作方法.框架会执行该方法.默认是execute().而execute()方法默认返回success
4.关于默认类
struts-default.xml 中进行了声明
<default-class-ref class=“com.opensymphony.xwork2.ActionSupport”/>
我们可以在 struts.xml 中覆盖它
<default-class-ref class="com.wangyjie.struts.helloworld.HelloAction"/>
包含其他配置文件
所有设置内容可以分开几个xml文件写,不必都写在一个struts.xml中
<!--引入其他的配置文件-->
<include file="sturts-user.xml"/>