在默认情况下,Struts2只自动加载类加载路径下的struts.xml.default-struts.xml和struts-plugin.xml三类文件。但是随着应用规模的增大,系统中Action数量也大量增加,将导致struts.xml非常臃肿。为了避免这种这情况,我们可以将struts.xml配置文件分解成多个配置文件,然后在struts.xml文件中包含其他配置文件。被包含的配置文件也是标准的Struts2配置文件,一样包含了DTD信息,根元素等信息。

以下是struts.xml配置文件的示范。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.1.7//EN"
"http://struts.apache.org/dtds/struts-2.1.7.dtd">
<!-- Struts2 是配置文件的根元素 -->
<struts>
<!-- 下面的元素可以出现0次或者无限次-->
<constant name="" value=""/>
<!-- 下面的元素可以出现0次或者无限次-->
<bean type="" name="" class="" scope="" static="" optional="" />
<!-- 下面的元素可以出现0次或者无限次-->
<include file="" />
<!-- package元素是Struts2配置文件的核心,package元素可以出现0次或者无限次-->
<package name="必填" extends="" namespace="" abstract="" externalReferenceResolver="">
<!-- 下面的元素可以出现0次或者1次-->
<result-types>
<!-- 下面的元素可以出现1次或者无限次-->
<result-type name="" class="" default="true|false">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</result-type>
</result-types>
<!-- 下面的元素可以出现0次或者1次-->
<interceptors>
<!-- 该元素的interceptor元素和interceptor-stack至少出现其中之一,或者同时出现 -->
<!-- 下面的元素可以出现0次或者无限次-->
<interceptor name="" class="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</interceptor>
<!-- 下面的元素可以出现0次或者无限次-->
<interceptor-stack name="">
<!-- 下面的元素可以出现1次或者无限次-->
<interceptor-ref name="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
<!-- 下面的元素可以出现0次或者1次-->
<default-interceptor-ref name="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</default-interceptor-ref>
<!-- 下面的元素可以出现0次或者1次-->
<default-action-ref name="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</default-action-ref>
<!-- 下面的元素可以出现0次或者1次-->
<default-class-ref class="">...</default-class-ref>
<!-- 下面的元素可以出现0次或者1次-->
<global-results>
<!-- 下面的元素可以出现1次或者无限次-->
<result name="" type="">
映射资源
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</result>
</global-results>
<!-- 下面的元素可以出现0次或者1次-->
<global-exception-mappings>
<!-- 下面的元素可以出现1次或者无限次-->
<exception-mapping name="" result="" exception="" result="">
异常处理资源
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</exception-mapping>
</global-exception-mappings>
<!-- 下面的元素可以出现0次或者无限次-->
<action name="" class="" method="" converter="" >
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
<!-- 下面的元素可以出现0次或者无限次-->
<result name="" type="">
映射资源
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</result>
<!-- 下面的元素可以出现0次或者无限次-->
<interceptor-ref name="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</interceptor-ref>
<!-- 下面的元素可以出现0次或者无限次-->
<exception-mapping name="" result="" exception="">
<!-- 下面的元素可以出现0次或者无限次-->
<param name="name">value</param>
</exception-mapping>
</action>
</package>
<!-- 下面的元素可以出现0次或者1次-->
<unknown-handler-stack>
<unknown-handler-ref name="处理器名">...</unknown-handler-ref>
</unknown-handler-stack>
</struts>

【学习笔记】Struts2之配置文件struts.xml的更多相关文章

  1. struts2之配置文件struts.xml详解

    struts配置文件 struts.xml配置参数详解 struts.xml中很大一部分配置默认配置就好了 但是有些还是需要做了解  以便于理解 和修改 <?xml version=" ...

  2. struts2学习笔记(3)struts.xml的一些常用设置

    在开发中通常需要用到多个配置文件,可以通过在web.xml中添加以下代码: <include file="login.xml"></include> 将sr ...

  3. Struts2更改配置文件struts.xml默认路径

    struts2配置文件默认存放路径在/WEB-INF/classes目录下,即将struts.xml放在src的目录下. 但是为了协作开发与方便管理,我们有时需要把struts.xml放到其他位置 s ...

  4. struts2配置文件struts.xml的简介

    本文在于总结,深入研究有别人写的很好了,也没必要再去写,将在本文后面附上他们的文章地址: 一.struts2的执行过程: 二.struts2的配置文件struts.xml 下面是其三大部分includ ...

  5. struts2默认配置文件 struts-default.xml

    注:用的struts2的版本是2.1.6 strtus2的默认配置文件 struts-default.xml ,其中的默认的拦截器,包括其中的拦截器栈. 因为struts2的配置文件struts.xm ...

  6. Struts2学习笔记——Struts2与Spring整合

      Struts2与Spring整合后,可以使用Spring的配置文件applicationContext.xml来描述依赖关系,在Struts2的配置文件struts.xml来使用Spring创建的 ...

  7. SpringBoot学习笔记:读取配置文件

    SpringBoot学习笔记:读取配置文件 配置文件 在以往的项目中,我们主要通过XML文件进行框架配置,业务的相关配置会放在属性文件中,然后通过一个属性读取的工具类来读取配置信息.在SpringBo ...

  8. Struts2笔记1:--Struts2原理、优点、编程流程、6大配置文件以及核心配置文件struts.xml

    Struts2原理(底层使用的是Servlet的doFilter方法): Struts2优点: 第一个Struts程序: 在开发Struts程序之前,首先要导入额外的jar包,基本需求的是14个jar ...

  9. Struts2学习笔记 - Action篇<配置文件中使用通配符>

    有三种方法可以使一个Action处理多个请求 动态方法调用DMI 定义逻辑Acton 在配置文件中使用通配符 这里就说一下在配置文件中使用通配符,这里的关键就是struts.xml配置文件,在最简单的 ...

随机推荐

  1. 萌新笔记——git的问题(error: object file .git/objects/* is empty...)的解决方案及对git版本库文件的了解

    由于操作不当,导致git版本库出了大问题,如下所示: error: object file .git/objects/8b/61d0135d3195966b443f6c73fb68466264c68e ...

  2. HTML5全屏(Fullscreen)API详细介绍

    // 整个页面 onclick=   launchFullScreen(document.documentElement); // 某个元素 launchFullScreen(document.get ...

  3. /var/log/messages

    messages 该日志文件是许多进程日志文件的汇总,从该文件可以看出任何入侵企图或成功的入侵,包括整体系统信息,是系统最核心的日志.它包含了系统启动时的引导消息,以及系统运行时的其他状态消息.IO ...

  4. [LeetCode] Substring with Concatenation of All Words 串联所有单词的子串

    You are given a string, s, and a list of words, words, that are all of the same length. Find all sta ...

  5. Connect to Office365

    How to connect to office365 1. Connect to Exchange Online $UserCredential = Get-Credential $Session ...

  6. delphi 实现最小化系统托盘

    1.new -->application 2.在form1中加入一个tPopMenu 命名为pm1 3.uses ShellAPI; 4.定义一个常量在 const WM_TRAYMSG = W ...

  7. sql server 多列转多行实现方法

    select * from b_workOrder select * from( SELECT work_order_id,work_level, roles,code FROM (SELECT wo ...

  8. 知乎一道前端面试题详解,关于this的使用

    请说明要输出正确的myName的值要如何修改程序?并解释原因 foo = function(){ this.myName = "Foo function."; } foo.prot ...

  9. QPS 与 TPS 简介

    QPS:Queries Per Second意思是"每秒查询率",是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准. TPS是Tra ...

  10. javaweb查看后台session和request所有的值

    遍历session @RequestMapping(value ="/test2") public String upload2( HttpSession session) { E ...