Struts2之常量配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33229669/article/details/83447459

常量配置

Struts2框架默认常量的位置

在struts2-core的jar包中.
在org.apache.struts2包下有default.properties文件
在default.properties文件中定义了struts2框架的常用常量.

如何自定义常量

1.可以在src下创建一个strtus.properties配置文件
文件的内容,可以根据default.properties文件中的内容来修改
2.可以在web.xml文件中配置
例如

<filter>
		<filter-name>struts2Filter</filter-name>
		<filter-class>
			org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
		</filter-class>
		可以声明struts2框架常量值
		<init-param>
			<param-name>struts.i18n.encoding</param-name>
			<param-value>GBK</param-value>
		</init-param>
		
	</filter>

init-param 标签下就是定义的常量的键和值.
3.可以直接在strtus.xml文件中定义常量 (推荐)
下面主要是介绍在struts.xml中进行常量的配置.

struts.xml中配置常量

在struts.xml中的struts标签下,可以进行常量的配置.
用的是constant标签.
constant标签的name属性为常量的键, value属性为常量的值.
键都可以在default.properties文件中查找, 都有其默认的值.
可以根据自己需要,将其默认值进行改变.

介绍几个常用的常量配置
下面这个常量配置的意义是,可以帮助我们解决post请求乱码问题
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
下面这个常量配置含义是 指定访问strtsu2框架路径的扩展名. 该例子是说前端发送的请求,必须以.action结尾,后台的action才能进行响应.
<constant name="struts.action.extension" value="action"></constant>
下面这个常量配置含义是开启开发者模式.
它会提供更加详细报错信息,以及在struts.xml文件修改后不在需要重启服务器
<constant name="struts.devMode" value="true"></constant>

需要注意的一点

后加载的配置文件中的常量会将先加载的常量覆盖.
即如果在不同的配置文件中,对同一个键值进行了常量的配置, 那么后加载的配置文件, 会对先加载的配置文件中的值进行覆盖掉.
配置文件的加载顺序如下

  1. 第一个加载的是default.properties文件
    位置:strtus2-core.jar包 org.apache.struts2包下
    作用:主要是声明了struts2框架的常量
  2. 第二个加载的是一批配置文件
    Strtus-default.xml
    位置:struts2-corl.jar
    作用:声明了interceptor result bean
    Strtus-plugin.xml
    位置:在strtus2的插件包中
    作用:主要用于插件的配置声明
    Strtus.xml
    位置:在我们自己的工程中
    作用:用于我们自己工程使用strtus2框架的配置
  3. 第三个加载的是自定义的strtus.properties
    位置:都是在自己工程的src下
    作用:定制常量
  4. 第四自定义配置提供
  5. 第五加载的是web.xml配置文件
    主要是加载strtus2框架在web.xml文件中的相关配置.
  6. 第六 bean相关配置

猜你喜欢

转载自blog.csdn.net/qq_33229669/article/details/83447459