<?xml version="1.0" encoding="UTF-8"?>
<!-- 下面指定 Struts2 配置文件的DTD信息 -->
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"
http://struts.apache.org/dtds/struts-2.0.dtd
">
<!-- struts 是 Struts2 配置文件的根元素 -->
<struts>
<!-- 下面元素可以出现0次,也可以出现多次
配置Struts2常量和web.xml中的
<init-param>
<param-name></param-name>
<param-value></param-value>
</init-param>
一样
-->
<constant name="" value="" />
<!-- 下面元素可以出现0次,也可以出现多次 -->
<bean type="" name="" class="" scope="" static="" optional="" />
<!--
include节点是struts2中组件化的方式可以将每个功能模块独立到一个xml配置文件中
然后用include节点引用
-->
<include file="struts-default.xml" />
<!-- package元素是struts配置的核心,该元素可以出现0次或元素多次
name:为此package定义一个唯一的标识
extends:此package所继承的package
namespace:此package命名空间如果不设定默认为RootContext,该命名空间影响到url的地址,例如此命名空间为/test那么访问是的地址为
http://localhost:8080/struts2/test/XX.action
abstract:设置此package为抽象的,抽象pageage里不能存在action。此属性的值为true或者false
externalReferenceResolve
r:用来整合第三方类库,如spring
-->
<package name="struts2" extends="struts-default" namespace="/test" abstract=""
externalReferenceResolve
r="类库">
<!-- result-types标签最多出现一次。
result-types标签下必须出现result-type标签1次或者多次
-->
<result-types>
<!-- result-type可以无限次出现
name: 用来唯一标识这个结果类型
class: 此结果类型的Java Class 位置
default: 是否设置默认的结果类型,默认值为false。如果设置为默认的结果类型,则如果一个result没有指定type将会默认使用此result type
-->
<result-type name="" class="" default="true">
<!-- param参数可以出现0次或无限多次 -->
<param name="参数名">参数值</param>
</result-type>
</result-types>
<!-- interceptors无素可以出现,也可以不出现,最多出现1次
定义拦截器
-->
<interceptors>
<!--
该元素和interceptor-stack必须出现一个,
也可以同时出现或出现多次
name:用来标识此拦截器
class:用来指定拦截器java class的位置
-->
<interceptor name="" class="">
<!-- param元素可以出现0次或多次 -->
<param name=""></param>
</interceptor>
<!-- 下面参数可以出现0次,也可以无限多次
用来定义一个拦截器栈
-->
<interceptor-stack name="">
<!-- interceptor-ref参数必需出现,可以出现无限次
用来指定此拦截器栈引用的拦截器
-->
<interceptor-ref name="">
<param name="参数名">参数值</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- default-interceptor-ref元素可以出现0次也可以出现无限多次
定义默认的拦截器每个Action都会自动引用
如果Action中引用了其它的拦截器默认的拦截器将无效
-->
<default-interceptor-ref name=""></default-interceptor-ref>
<!-- 下面元素可以出现0次也可以出现无限多次
表示这个package默认使用的action
-->
<default-action-ref name=""></default-action-ref>
<!-- 下面参数可以出现0次也可以出现无限多次
为这个package设置共通使用的result,对这个package下的所有action都有效
-->
<global-results>
<!--
用来设置共通的result
name:用来标识此result
type:结果的类型
-->
<result name="" type="">
<!-- 可以出现0次或无限多次
-->
<param name="参数名">参数值</param>
</result>
</global-results>
<!-- 为这个package定义共通的当发生异常的时候,所用到的result,
需与global-results结合使用
-->
<global-exception-mappings>
<!-- name:用来标识此exception-mapping
exception:发生的exception的类型(必需)
result:当发生exception时所参照的result (必需)
-->
<exception-mapping name="" result="" exception="">
<!-- exception-mapping标签下可以出现param标签0次或者多次
-->
<param name=""></param>
</exception-mapping>
</global-exception-mappings>
<!-- Action配置一个Action可以被多次映射(只要action配置中的name不同)
name:action名称——用来唯一标识此action(必需)
class:用来指定action的java class的位置(必需)
method:为此action指定调用的方法,不指定时默认调用execute方法
converter:为此action指定使用的converter,不指定时使用默认的converter
-->
<action name="" class="" method="" converter="">
<!-- 下面参数可以出现0次,也可以出现多次 -->
<param name="url">www.163.com</param>
<!-- 下面参数可以出现0次,也可以出现多次
节点配置
name : result名称和Action中返回的值相同
type : result类型 不写则选用superpackage的type struts-default.xml中的默认为dispatcher,也可以配置为redirect或者其他。
-->
<result name="" type="">
<param name="参数名">参数值</param>
</result>
<!-- 下面参数可以出现0次,也可以出现多次
引用拦截器
name:拦截器名称或拦截器栈名称 -->
<interceptor-ref name="">
<param name="参数名">参数值</param>
</interceptor-ref>
<!-- 下面参数可以出现0次,也可以出现多次 -->
<exception-mapping result="" exception="">
<param name=""></param>
</exception-mapping>
</action>
</package>
</struts>
<!-- 下面指定 Struts2 配置文件的DTD信息 -->
<!DOCTYPE struts PUBLIC
<!-- struts 是 Struts2 配置文件的根元素 -->
<struts>
-->
</struts>