struts2--struts.properties属性配置文件详解以及配置文件间的优先级问题

#是否是开发模式
struts.devMode=true

#属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,
#则可设置该属性为false 
struts.serve.static.browserCache=false

#该属性设置是否每次HTTP请求到达时,系统都重新加载资源文件。
#该属性默认值是false。在开发阶段将该属性设置为true会更有利于开发,
struts.i18n.reload=true

#设置国际化资源文件的名称
struts.custom.i18n.resources=abc

#设置编码格式为UTF-8, 相当于调用HttpServletRequest的setCharacterEncoding方法
struts.i18n.encoding=UTF-8

#这样写的目的是使得访问地址的后缀可以是以下,例如adduser.action、adduser.do、、、、
struts.action.extension=do,php,asp,aspx,action



### Parser to handle HTTP POST requests, encoded using the MIME-type multipart/form-data
# struts.multipart.parser=cos
# struts.multipart.parser=pell
struts.multipart.parser=jakarta
# uses javax.servlet.context.tempdir by default
struts.multipart.saveDir=
struts.multipart.maxSize=2097152

#该属性指定Struts 2框架默认加载的配置文件,如果需要指定默认加载多个配置文件,则多个配置文件的文件名之间以英文逗号(,)隔开。
#该属性的默认值为struts-default.xml,struts-plugin.xml,struts.xml,看到该属性值,读者应该明白为什么Struts 2框架默认加载struts.xml文件了。
struts.configuration.files=struts-default.xml,struts-plugin.xml,struts.xml,user.xml


##########以上为常用到的配置信息##############


#########配置文件的优先级问题###############

手动修改配置文件,可以在web.xml,struts.properties,struts.xml中分别进行配置,优先级是  web.xml > struts.properties >struts.xml.


以编码方式为例:
在web.xml中:
<filter>
 <filter-name>my_struts_2</filter-name>
 <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
 <init-param>
  <param-name>struts.i18n.encoding</param-name>
  <param-value>UTF-8</param-value>
 </init-param>
 </filter>
在struts.properties中:
struts.i18n.encoding=GBK
在struts.xml中:
<constantname="struts.i18n.encoding"value="ISO-8859-1"></constant>
最后的编码格式将是UTF-8。





-----------------下面是详细解读-----------------
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTDStruts Configuration 2.1//EN""http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
 
一、         静态属性constant
1.1.      struts.serve.static.browserCache
<!-- 该属性设置浏览器是否缓存静态内容。当应用处于开发阶段时,我们希望每次请求都获得服务器的最新响应,
则可设置该属性为false -->
<constant name="struts.serve.static.browserCache"value="false"/>
 
1.2.     struts.enable.DynamicMethodInvocation
<!-- 该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,
则可设置该属性为false
<constant name="struts.enable.DynamicMethodInvocation"value="true"/>-->
 
1.3.     struts.enable.SlashesInActionNames
<!--
struts.enable.SlashesInActionNames :该属性设置Struts 2是否允许在Action名中使用斜线,该属性的默认值是false。如果开发者希望允许在Action名中使用斜线,则可设置该属性为true。
struts.tag.altSyntax: 该属性指定是否允许在Struts 2标签中使用表达式语法,因为通常都需要在标签中使用表达式语法,故此属性应该设置为true,该属性的默认值是true。
 
1.4.      struts.devMode
struts.devMode:该属性设置Struts 2应用是否使用开发模式。如果设置该属性为true,则可以在应用出错时显示更多、更友好的出错提示。
该属性只接受true和flase两个值,该属性的默认值是false。通常,应用在开发阶段,将该属性设置为true,当进入产品发布阶段后,则该属性设置为false。
 
1.5.      struts.i18n.reload
struts.i18n.reload:该属性设置是否每次HTTP请求到达时,系统都重新加载资源文件。该属性默认值是false。在开发阶段将该属性设置为true会更有利于开发,
但在产品发布阶段应将该属性设置为false。
提示 开发阶段将该属性设置了true,将可以在每次请求时都重新加载国际化资源文件,从而可以让开发者看到实时开发效果;产品发布阶段应该将该属性设置为false,
是为了提供响应性能,每次请求都需要重新加载资源文件会大大降低应用的性能。
 
1.6.     struts.ui.theme
struts.ui.theme:该属性指定视图标签默认的视图主题,该属性的默认值是xhtml。
 
1.7.     struts.ui.templateDir
struts.ui.templateDir:该属性指定视图主题所需要模板文件的位置,该属性的默认值是template,即默认加载template路径下的模板文件。
 
1.8.     struts.ui.templateSuffix
struts.ui.templateSuffix:该属性指定模板文件的后缀,该属性的默认属性值是ftl。该属性还允许使用ftl、vm或jsp,分别对应FreeMarker、Velocity和JSP模板。
 
1.9.      struts.configuration.xml.reload
struts.configuration.xml.reload:该属性设置当struts.xml文件改变后,系统是否自动重新加载该文件。该属性的默认值是false。
 
1.10.  struts.velocity.configfile
struts.velocity.configfile:该属性指定Velocity框架所需的velocity.properties文件的位置。该属性的默认值为velocity.properties。
 
1.11.  struts.velocity.contexts
struts.velocity.contexts:该属性指定Velocity框架的Context位置,如果该框架有多个Context,则多个Context之间以英文逗号(,)隔开。
 
1.12.  struts.velocity.toolboxlocation
struts.velocity.toolboxlocation:该属性指定Velocity框架的toolbox的位置。
 
1.13.  struts.url.http.port
struts.url.http.port该属性指定Web应用所在的监听端口。该属性通常没有太大的用户,只是当Struts 2需要生成URL时(例如Url标签),该属性才提供Web应用的默认端口。
 
struts.url.https.port:该属性类似于struts.url.http.port属性的作用,区别是该属性指定的是Web应用的加密服务端口。
 
1.14.  struts.url.includeParams
struts.url.includeParams:该属性指定Struts 2生成URL时是否包含请求参数。该属性接受none、get和all三个属性值,分别对应于不包含、仅包含GET类型请求参数和包含全部请求参数。
 
1.15.   struts.custom.i18n.resources
struts.custom.i18n.resources该属性指定Struts 2应用所需要的国际化资源文件,如果有多份国际化资源文件,则多个资源文件的文件名以英文逗号(,)隔开。
 
1.16.  struts.dispatcher.parametersWorkaround
struts.dispatcher.parametersWorkaround :对于某些Java EE服务器,不支持HttpServletRequest调用getParameterMap()方法,此时可以设置该属性值为true来解决该问题。该属性的默认值是false。对于WebLogic、Orion和OC4J服务器,通常应该设置该属性为true。
 
1.17.  struts.freemarker.manager.classname
struts.freemarker.manager.classname: 该属性指定Struts 2使用的FreeMarker管理器。该属性的默认值是org.apache.struts2.views.freemarker.FreemarkerManager,这是Struts 2内建的FreeMarker管理器。
 
1.18.  struts.freemarker.wrapper.altMa
struts.freemarker.wrapper.altMap该属性只支持true和false两个属性值,默认值是true。通常无需修改该属性值。
 
1.19.  struts.xslt.nocache
struts.xslt.nocache 该属性指定XSLT Result是否使用样式表缓存。当应用处于开发阶段时,该属性通常被设置为true;当应用处于产品使用阶段时,该属性通常被设置为false。
 
1.20.   struts.configuration.files
struts.configuration.files: 该属性指定Struts 2框架默认加载的配置文件,如果需要指定默认加载多个配置文件,则多个配置文件的文件名之间以英文逗号(,)隔开。
该属性的默认值为struts-default.xml,struts-plugin.xml,struts.xml,看到该属性值,读者应该明白为什么Struts 2框架默认加载struts.xml文件了。
 
1.21.   struts.i18n.encoding
设置编码格式为UTF-8,相当于调用HttpServletRequest的setCharacterEncoding方法
<constant name="struts.i18n.encoding" value=" UTF-8"/>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值