在Struts 2的核心JAR包的org.apache.struts2目录下提供了默认的属性配置文件default.properties,如果要自定义属性的话,需要在WebContent/WEB-INF/classes目录下添加struts.properties,来覆盖系统的默认文件属性。在后面的开发中我们就会使用复制的struts.properties来设置系统的属性。
在该文件中包含了一系列的键值对,我们将默认的default.properties中的内容复制出来翻译成中文,其各个属性的解释如程序24-1所示。
程序24-1 default.properties配置选项
- ###指定Struts2的配置类,默认为下面的配置,你也可以通过继承
- ###org.apache.struts2.config.Configuration来实现自己的配置类
- #struts.configuration=org.apache.struts2.config.DefaultConfiguration
- ###设置默认的国际化地区信息和国际化信息内码
- #struts.locale=en_US
- struts.i18n.encoding=UTF-8
- ###指定对象工厂类,你可以实现自己的工厂类,但必须继承自
- ###com.opensymphony.xwork2.ObjectFactory
- #struts.objectFactory=spring
- ###当使用Spring的工厂类时,指定自动植入autoWiring的机制,可选值有
- ###name、type、auto和constructor(Name为默认值)
- struts.objectFactory.spring.autoWire=name
- ###使用Spirng集成时,是否使用类缓存,
- 可选值有true、false(true为默认值)
- struts.objectFactory.spring.useClassCache=true
- ###指定对象类型检查器,可用值有"tiger"or"notiger",也可以使用自己的类
- ###但必须继承com.opensymphony.xwork2.util.ObjectTypeDeterminer
- #struts.objectTypeDeterminer=tiger
- #struts.objectTypeDeterminer=notiger
- ###指定使用MIME-typemultipart/form-data时的解析器
- #struts.multipart.parser=cos
- #struts.multipart.parser=pell
- struts.multipart.parser=jakarta
- #默认使用javax.servlet.context.tempdir
- struts.multipart.saveDir=
- struts.multipart.maxSize=2097152
- ###指定自定义的属性文件
- #struts.custom.properties=application,org/apache
- /struts2/extension/custom
- ###URL与Action映射处理器
- #struts.mapper.class=org.apache.struts2.dispatcher.
- mapper.DefaultActionMapper
- ###指定URL扩展名,可以指定多个扩展名,用逗号分隔,例如action,jnlp,do
- struts.action.extension=action
- ###被FilterDispatcher所使用,true表示Strutsservesstatic
- content来自于内部jar
- ###false表示staticcontent必须在<context_path>/struts下可用
- struts.serve.static=true
- ###Struts过滤器中提供的静态内容是否应该被浏览器缓存在头部属性中
- struts.serve.static.browserCache=true
- ###是否允许动态方法调用,如果为true,
- 则可以配置如下的<action>参数映射
- ###<actionname="*/*"method="{2}"class="actions.{1}">
- struts.enable.DynamicMethodInvocation=true
- ###是否在action名称中允许"/",如果为true,
- 下面的配置将匹配"/foo/edit"或"/foo/save"
- ###<actionname="*/*"method="{2}"class="actions.{1}">
- struts.enable.SlashesInActionNames=false
- ###是否可以用替代的语法%{}替代tags
- struts.tag.altSyntax=true
- ###Struts是否为开发模式
- struts.devMode=false
- ###是否国际化信息自动加载
- struts.i18n.reload=false
- ###默认的UItemplate主题和UItemplates的目录夹
- struts.ui.theme=simple
- struts.ui.templateDir=template
- #设置默认的默认类型,如ftl、vm、jsp
- struts.ui.templateSuffix=ftl
- ###在struts.xml文件更改时,是否允许重载
- struts.configuration.xml.reload=false
- ###velocity配置文件路径,默认为velocity.properties
- struts.velocity.configfile=velocity.properties
- ###velocity的context列表
- struts.velocity.contexts=
- ###velocity工具盒的位置
- struts.velocity.toolboxlocation=
- ###设置HTTP、HTTPS端口
- struts.url.http.port=80
- struts.url.https.port=443
- ###在URL中产生默认的includeParams,可选值有none、get、all
- struts.url.includeParams=get
- ###加载附加的国际化属性文件(不包含.properties后缀)
- struts.custom.i18n.resources=com.demo.struts2.resources.
- ApplicationResources
- ###是否使用一个servlet请求参数工作区,
- 常用在WebLogic、Orion、andOC4J
- struts.dispatcher.parametersWorkaround=false
- ###指定FreemarkerManager类名,可以继承自org.apache.struts2.
- views.freemarker.FreemarkerManager
- #struts.freemarker.manager.classname=org.apache.struts2.
- views.freemarker.FreemarkerManager
- ###是否启用FreeMarkertemplates缓存
- struts.freemarker.templatesCache=false
- ###是否启动BeanWrapper缓存
- struts.freemarker.beanwrapperCache=false
- ###参见StrutsBeanWrapperjavadocs
- struts.freemarker.wrapper.altMap=true
- ###XSLT模板是否应该被缓存
- struts.xslt.nocache=false
- ###Struts自动加载的配置文件列表
- struts.configuration.files=struts-default.xml,
- struts-plugin.xml,struts.xml
- ###在最后一个"/"之前是否选择命名空间
- struts.mapper.alwaysSelectFullNamespace=false
其中粗体的部分是比较重要且比较常用的配置属性,在后面的开发中我们也将针对上面粗体部分的属性进行配置。