在默认情况下,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. [python]爬虫学习(三)糗事百科

    import requestsimport osfrom bs4 import BeautifulSoupimport timepage=2url='http://www.qiushibaike.co ...

  2. (转)Java:类与继承

    原文地址: http://www.cnblogs.com/dolphin0520/p/3803432.html 对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础.抽象.封装.继承.多态这四大 ...

  3. Ubuntu16.04 LTS下apt安装WireShark

    Ubuntu16.04 LTS下apt安装WireShark 安装与配置 首先通过apt安装WireShark: $ sudo apt install wireshark 会同时安装许多的依赖包,其中 ...

  4. grub2配置显示系统选择菜单(ubuntu 14.04)

    背景: 有一次遇到过安装的新的内核后,ubuntu并没有显示选择内核的grub菜单,按shift键才会弹出,有时候shift按得不准就又进入了不是想进入的那个系统. 配置方法: sudo vim /e ...

  5. 浅谈 Web 中前后端模板引擎的使用

    前言 这篇文章本来不打算写的,实话说楼主对前端模板的认识还处在非常初级的阶段,但是为了整个 源码解读系列 的完整性,在深入 Underscore _.template 方法源码后,觉得还是有必要记下此 ...

  6. 我们都是IT民工---------流浪人IDE开发札记

    你生命中的有些东西终究会失去,比如我住了6年的陈寨,这个聚集了郑州十几万IT民工的地方,说拆就拆了.再比如我玩了3年的坦克英雄,这个带给我太多快乐的游戏,说停就停了. 编程对我而言是种爱好,我上学6年 ...

  7. 如何在ASP.NET Core中使用Redis

    注:本文提到的代码示例下载地址> https://code.msdn.microsoft.com/How-to-use-Redis-in-ASPNET-0d826418 Redis是一个开源的内 ...

  8. POJ 1979 Red and Black

    #include<iostream> #include<cstdio> #include<queue> #include<algorithm> #inc ...

  9. .Net4.0以上使用System.Data.Sqlite

    最近对Sqlite感兴趣,就尝试了一下用c#连接,我用的版本是vs2013,默认开发环境是.net4.5,,按照网上的教材,下载了System.Data.Sqlite,然后写了下面这个简单的测试代码, ...

  10. How to Disable Strict SQL Mode in MySQL 5.7

    If your app was written for older versions of MySQL and is not compatible with strict SQL mode in My ...