完整的struts.xml文件骨架
完整的struts.xml文件骨架可以直接拿来用,修改一下就可以啦。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1//EN"
"http://struts.apache.org/dtds/struts-2.1.dtd">
<!-- struts是Struts2配置文件的根元素 -->
<struts>
<!-- 用于配置Struts2的常量,比如说指定Web采用的默认编码集,可以出现0次或多次 -->
<constant name="" value="" />
<!-- 这个跟Spring里面的bean一样的作用,可以出现0次或多次 -->
<bean type="" class="" scope="" static="" optional="" />
<!-- 用于包含其他配置文件,我们通常喜欢分类管理不同的Action,然后在struts.xml文件包含这些配置文件,可以出现0次或多次 -->
<include file="" />
<!-- package提供了将多个Action组织为一个模块的方式 package的名字必须是唯一的 package可以扩展 当一个package扩展自
另一个package时该package会在本身配置的基础上加入扩展的package 的配置 父package必须在子package前配置 name:package名称
extends:继承的父package名称 abstract:设置package的属性为抽象的 抽象的package不能定义action 值true:false
namespace:定义package命名空间 该命名空间影响到url的地址,例如此命名空间为/test那么访问是的地址为http://localhost:8080/struts2/test/XX.action -->
<package name="必填的包名" extends="" namespace="" abstract=""
externalReferenceResolver="">
<!-- 每个包都要设置一个默认的结果类型,如果没指定默认的结果类型,则继承父包的类型 ,可以出现0次或多次 -->
<result-types>
<result-type name="dispatcher" default="true"
class="org.apache.struts2.dispatcher.ServletDispatcherResult" />
</result-types>
<interceptors>
<!-- 定义拦截器 name:拦截器名,class:拦截器类 -->
<interceptor name="" class=""></interceptor>
<!-- 拦截器栈,定义一组拦截器 -->
<interceptor-stack name="">
<!-- 拦截器引用 -->
<interceptor-ref name=""></interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 默认拦截器引用,最多出现一次 -->
<default-interceptor-ref name=""></default-interceptor-ref>
<!-- 默认的Action,如果没有找到对应URL的拦截器,则采用默认的Action,最多出现一次 -->
<default-action-ref name=""></default-action-ref>
<!-- 当我们在配置Action的时候,如果没有为某个Action指定具体的class值时,系统将自动引用<default-class-ref>标签中所指定的类。 -->
<default-class-ref class=""></default-class-ref>
<!-- 1当多个Action使用同一个result时,可以使用<global-results>标签配置全局result; 2.当Action返回的字符串没有相应的result,Struts2会在package中查找全局result;
3.如果需要使用其他package或者通过<include>标签引用的其他xml文件中的全局result,则需要通过package中的extends属性指定继承的package。 -->
<global-results>
<result>
<param name=""></param>
</result>
</global-results>
<!--<exception-mapping>与<global-exception-mapping> 这两个标签都是用来配置发生异常时对应的视图信息的,
只不过一个是Action范围的,一个是包范围的,当同一类型异常在两个范围都被配置时, Action范围的优先级要高于包范围的优先级.这两个标签包含的属性也是一样的: -->
<global-exception-mappings>
<!-- result:指定发生异常时显示的视图信息,这里要配置为逻辑视图;exception:指定异常类型 -->
<exception-mapping result="" exception=""></exception-mapping>
</global-exception-mappings> <!-- 核心Action -->
<action name="" class="" method="" converter="">
<!-- 定义Action中的参数 -->
<param name=""></param>
<!-- 定义该Action发生异常时,跳转到的逻辑视图 -->
<exception-mapping result="" exception=""></exception-mapping>
<!-- 定义访问该Action时的拦截器 -->
<interceptor-ref name=""></interceptor-ref>
<!-- 定义该Action的结果视图 -->
<result></result>
</action>
</package>
<!-- 未知处理器栈从Struts 2.1 开始出现。 未知处理器 未知处理器是那些实现了com.opensymphony.xwork2.UnknownHandler
接口的类,当未知的action、result或者方法被执行的时候,通过框架被调用。要定义个位置处理器,创建一个实现了那个接口的泪,并且在struts.xml中添加一个bean定义:
<bean type="com.opensymphony.xwork2.UnknownHandler" name="handler" class="myclasses.SomeUnknownHandler"/>建立未知处理器栈
使用 unknown-handler-stack标签可以定义多个未知处理器: <bean type="com.opensymphony.xwork2.UnknownHandler"
name="handler1" class="com.opensymphony.xwork2.config.providers.SomeUnknownHandler"/>
<bean type="com.opensymphony.xwork2.UnknownHandler" name="handler2" class="com.opensymphony.xwork2.config.providers.SomeUnknownHandler"/>
<unknown-handler-stack> <unknown-handler-ref name="handler1" /> <unknown-handler-ref
name="handler2" /> </unknown-handler-stack> 当多个未知处理器像上面那样被罗列在一起的时候,它们就会按照指定的顺序被调用。同样的,依次次调用一个单独的未知处理器(当未知的action、result或者方法被执行的时候),直到其中一个处理了被请求的action。
未知处理器管理器 默认管理未知处理器栈的类是 com.opensymphony.xwork2.DefaultUnknownHandlerManager,要实现自定义类可以实现interface
com.opensymphony.xwork2.UnknownHandlerManager 接口,并且设置一下 struts.unknownHandlerManager属性(应该在struts.properties里面)。 -->
<unknown-handler-stack>
<unknown-handler-ref name=""></unknown-handler-ref>
</unknown-handler-stack>
</struts>
完整的struts.xml文件骨架的更多相关文章
- 3. 解析 struts.xml 文件
1. struts.xml 文件基本配置: 主要放在资源路径下,配置 sturts2相关的 Action , 拦截器等配置 <struts> <!-- 设置常量 --> < ...
- struts2——配置struts.xml文件
在struts2框架中struts.xml是应当放到src的根目录,程序编译后会将struts.xml放到WEB-INF/classes目录下. Struts2在web.xml中的一般配置如下: &l ...
- struts.xml文件中配置tiles.xml
Apache Tiles是一个JavaEE应用的页面布局框架.Tiles框架提供了一种模板机制,可以为某一类页面定义一个通用的模板,该模板定义了页面的整体布局.布局由可以复用的多个块组成,每个页面可以 ...
- struts.xml 文件添加DTD文件
在编辑struts.xml 文件时,“alt + /”无提示信息,需要在myeclipse 中添加消息头中的文件,步骤如下: 1. 选中该段复制 2. Preferences——>XML Cat ...
- struts.xml文件:
struts.xml文件中包含的配置信息,你将修改所采取的措施的开发.这个文件可以被用来覆盖默认设置的应用程序,例如struts.devMode=false和其他设置中定义的属性文件.这个文件可以创建 ...
- Struts2 学习笔记——struts.xml文件之Bean的配置
Struts2的大部分核心组件不是以硬编码的形式写在代码中,而是通过自身的IoC容器来管理的. Struts2以可配置的形式来管理核心组件,所以开发者可以很容易的扩展框架的核心组件.当开发者需要扩展或 ...
- Struts2 | struts.xml文件中使用method属性和通配符简化action标签和Action处理类的编写
转自:https://www.jianshu.com/p/310e89ee762d 在Struts2框架中,我们知道基本的Action标签只能实现一个url请求对应一个Action处理类.那么我们如果 ...
- (二)Struts.xml文件详解
一.Struts.xml文件 Struts.xml文件构成 如图,<Struts>标签内共有5个子标签. 1.1 struts-default.xml 查看Struts的内容可知,Stru ...
- Struts2学习-struts.xml文件配置
学习框架过程中,一直对框架中的配置文件比较难理解,特搜集资料简要记录一下struts.xml文件遇到的问题. <?xml version="1.0" encoding=&qu ...
随机推荐
- SVN强制注释
1.目的 在使用SVN作为版本控制的时候,强制提交的人员写注释,这样能确保每次提交都有注释,方便查看 2.解决办法 2.1给工程加上属性 2.1.1在工程提交之后,通过客户端 ...
- Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python
Selenium终极自动化测试环境搭建(二)Selenium+Eclipse+Python 前面举例了Selenium+Eclipse+Junit+TestNG自动化测试环境的搭建,在前一篇的基础上, ...
- hdu 4424 Conquer a New Region (并查集)
///题意:给出一棵树.树的边上都有边权值,求从一点出发的权值和最大,权值为从一点出去路径上边权的最小值 # include <stdio.h> # include <algorit ...
- pat 1062. Talent and Virtue (25)
难得的一次ac 题目意思直接,方法就是对virtue talent得分进行判断其归属类型,用0 1 2 3 4 表示 不合格 sage noblemen foolmen foolmen 再对序列进行排 ...
- 从零開始开发Android版2048 (五) 撤销的实现
本篇的内容是,在前一篇的基础上添�了撤销的功能.撤销事实上就是将当前的用户界面恢复到这次滑动值前的样子.我实现撤销的主要原理是,将每次滑动后界面上的格子和相应的数字记录下来,当然还有分数,把这些数据写 ...
- iOS异步图片加载优化与常用开源库分析
网络图片显示大体步骤: 1.下载图片: 2.图片处理(裁剪,边框等): 3.写入磁盘: 4.从磁盘读取数据到内核缓冲区: 5.从内核缓冲区复制到用户空间(内存级别拷贝): 6.解压缩为位图(耗cpu较 ...
- POJ 2049 Finding Nemo
Finding Nemo Time Limit: 2000MS Memory Limit: 30000K Total Submissions: 8631 Accepted: 2019 Desc ...
- iOS图片拉伸
常用的图片拉伸场景有:聊天页面的气泡,需要根据内容拉伸,但圆角拉伸后会变形,为避免圆角拉伸,可以指定拉伸区域.UIImage实体调用以下方法即可指定拉伸区域. - (UIImage *)stretch ...
- poj 1780 code(欧拉路)
/* 对于n为密码想要序列最短 那么 1234 2345 这两个一定挨着 就是说 前一个的后n-1位是后一个的前n-1位 假设n==3 我们用0-99作为点的编号建图 然后每个点连出去10条边 两个相 ...
- 怎么在后台修改前台html页面的key、title、description
public void UpdateMeta(string title, string keyword, string desc) { ; i >= ; i--) { if (this.Head ...