Struts2-01-配置文件
Struts2配置文件
Struts2框架有很多个配置文件,分别用于配置不同的内容,其中部分是Struts框架默认的配置文件,开发者不能修改。在项目执行时,Struts2框架有序的加载所有配置文件。
1.1 Struts2配置文件的加载顺序
在Struts2中,如果两个配置文件中对同一属性进行了配置,则后加载的配置文件中的配置会覆盖先加载的配置文件中的配置。
Struts2配置文件的加载顺序:
default.properties
struts-default.xml
struts-plugin.xml
struts.xml
struts.properties
web.xml
其中,前三个是默认配置文件,进行开发时不需要关心。struts.xml是由用户定义的,是Struts2的核心配置文件,用来配置Action以及Struts2常量。struts.properties由用户定义,用来配置Struts2常量。web.xml用来配置Struts2的核心过滤器(必须)及Struts2常量。
1.2 Struts2配置Action
Struts2的核心配置文件是一个名称固定的文件:struts.xml。该文件主要用来配置Action类和对应的请求关系,还可以用来配置常量
一个简单的struts.xml配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN""http://struts.apache.org/dtds/struts-2.3.dtd">
<struts><package name="demoProject" extends="struts-default" namespace="/"><action name="ActionDemo1" class="com.mvc.action.ActionDemo1"><result name="success">/WEB-INF/jsp/view.jsp</result></action></package>
</struts>
1.1.1 package元素配置
Struts2框架的核心组件是Action和拦截器,Struts2使用包将Action和拦截器进行分类管理,其原理类似于java中的包,主要作用就是避免类重名,同时方便进行调用,易于扩展。
在struts.xml文件中,package元素用于定义包
package元素的常用属性:
属性 | 含义 |
---|---|
name | 必须,指定包名,包之间可以通过包名调用 |
namespace | 可选,定义包的名称空间,和name属性一同决定了Action类的位置 |
extends | 可选,该属性用来配置包的父包,子包可以继承父包中的Action定义,拦截器定义,通常配置为struts-default,使自定义的包具有Struts框架默认的拦截器功能 |
abstract | 可选,指定该包是否是一个抽象包,抽象包中不能包含Action定义 |
1.1.2 action元素配置
Action映射是Struts2框架中的基本“工作单元”,Action映射就是将一个请求的URL映射到一个Action类,Action来完成请求的处理。
在struts.xml文件中,使用action元素来配置Action
action元素的常用属性:
属性 | 含义 |
---|---|
name | 必须,指定与Action对应的URL请求 |
class | 可选,指定与Action对应的Action实体类,需要配置java类的全路径 |
method | 可选,指定请求方法,如果不指定此属性,则执行默认的名称为execute的方法 |
converter | 可选,指定类型转换器的实体类 |
1.3 Struts2常量的配置
开发者可以通过配置Struts2常量灵活的选择Struts2中的一些功能。Struts2中的常量都在Struts2的默认配置文件default.properties中进行了配置,开发者进行的重新配置会覆盖默认配置。
Struts2常量的配置的配置方式有3种:1)在struts.xml文件中使用constant元素配置。2)在struts.properties文件中配置。3)在web.xml文件中通过init-param元素配置
1.在struts.xml文件中配置
在struts.xml文件中使用constant元素配置常量,constant有两个属性,name和value,分别用来指定常量的名称和常量的值。例:
<struts><constant name="struts.devMode" value="false" /><constant name="struts.objectFactory" value="spring"/>
</struts>
2.在struts.properties文件中配置
struts.properties是一个properties格式的文件,按照key-value的方式配置常量,key即常量名,value即常量值。例:
struts.devMode=false
struts.objectFactory=spring
3.在web.xml文件中配置
在核心过滤器StrutsPrepareAndExecuteFilter的配置中可以添加init-param元素来配置常量。例:
<filter><filter-name>struts2</filter-name><filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class><init-param><param-name>struts.devMode</param-name><param-value>false</param-value></init-param></filter>
Struts2-01-配置文件相关推荐
- struts2默认配置文件 struts-default.xml
注:用的struts2的版本是2.1.6 strtus2的默认配置文件 struts-default.xml ,其中的默认的拦截器,包括其中的拦截器栈. 因为struts2的配置文件struts.xm ...
- 解决Struts2的配置文件struts.xml文件无提示问题
1.在上一篇文章Struts2搭建开发环境并编写第一个Struts2应用 中,详细的图解介绍了如何搭建Struts2开发环境和编写第一个Struts2应用,其中struts2的配置文件struts.x ...
- 六、Struts2的配置文件
六.Struts2的配置文件 1.default.properties:在struts2-core-**.jar的org.apache.struts包中 关于Struts2一些常量配置(框架内部) s ...
- struts2 mysql配置文件路径_Struts2(四)Struts2配置文件的配置
Struts2的常见配置 1.Struts2的配置文件的加载顺序: 每次从客户端发送到请求到服务器都要先从Struts2的核心过滤器StrutsPrepareAndExeccuteFilter,这个过 ...
- struts2 mysql配置文件路径_Struts2 配置文件
本章将带你通过一个Struts2应用程序所需的基本配置.在这里,我们将看到在一些重要的配置文件,将配置文件:web.xml ,struts.xml,struts-config.xml和struts.p ...
- Struts2 之配置文件编写,动作类(01)
学习路线: 1.struts入门(配置文件编写,动作类的编写及其访问方式) 2.封装数据和访问Servlet的api 3.ognl和值栈 4.拦截器和注解开发 struts2基本概念 Struts2是 ...
- struts2的配置文件
1.web.xml 2.struts.xml 主配置文件 <Bean>配置(用来扩展struts2的功能) 属性:class:全路径名 type:实现的接口 name:bean的名字,在具 ...
- struts2之配置文件struts.xml详解
struts配置文件 struts.xml配置参数详解 struts.xml中很大一部分配置默认配置就好了 但是有些还是需要做了解 以便于理解 和修改 <?xml version=" ...
- Struts2的配置文件——web.xml
2019独角兽企业重金招聘Python工程师标准>>> 任何MVC框架都需要与Web应用整合,这就不得不借助于web.xml文件,只有配置在web.xml文件中Servlet才会被应 ...
- Struts2的配置文件struts.xml详解
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-/ ...
最新文章
- SAP MM 不常用事务代码MIDO
- 自动随机逐层剪枝openpose
- 基于Javaweb实现人力资源管理系统
- golang 获取切片 slice 第一个 最后一个 元素
- [转] Oracle中Blob转Clob
- html5仪表板可调节,使用HTML5画布实现的超棒javascript动画仪表板:gauge.js
- python科学计算笔记(十四)pandas数据过滤、清理、转换
- su联合推拉插件_[实习小记一一SU建模]
- vs无法写入量的大数据_一个每天服务数万人的企业食堂:自助餐按重计价,大数据支持食材预备量...
- 我的世界服务器虚拟菜单插件,[综合|娱乐|管理][比赛]VirtualMenu——支持多种类型GUI的虚拟菜单[1.7.10~1.14]...
- 工程数学(数值分析)第五讲:数据拟合
- 堆排序的应用-优先级队列
- 判断完全二叉树(顺序存储)
- Vue项目里面使用jsmind.js插件来制作思维导图页面完成需求
- Java去掉字符串首尾的““
- ISIS Neighbor Net Type DIS
- 负数在计算机中到底是如何表示的
- Spice Model 解读
- SAP选择屏幕开发(一)
- Android开发:调用系统图库选择图片