Struts2\constant应用
<!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 --> <constant name="struts.i18n.encoding" value="UTF-8" /> <!-- 该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理。 如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 --> <constant name="struts.action.extension" value="do" /> <!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 --> <constant name="struts.serve.static.browserCache " value="false" /> <!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 --> <constant name="struts.configuration.xml.reload" value="true" /> <!-- 开发模式下使用,这样可以打印出更详细的错误信息 --> <constant name="struts.devMode" value="true" /> <!-- 默认的视图主题 --> <constant name="struts.ui.theme" value="simple" /> <!-- 该属性指定Struts 2中的action由Spring容器创建 --> <constant name="struts.objectFactory" value="spring" /> <!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 --> <constant name="struts.i18n.encoding" value="UTF-8" /> <!-- 该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理。 如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。 --> <constant name="struts.action.extension" value="do" /> <!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 --> <constant name="struts.serve.static.browserCache " value="false" /> <!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 --> <constant name="struts.configuration.xml.reload" value="true" /> <!-- 开发模式下使用,这样可以打印出更详细的错误信息 --> <constant name="struts.devMode" value="true" /> <!-- 默认的视图主题 --> <constant name="struts.ui.theme" value="simple" /> <!-- 该属性指定Struts 2中的action由Spring容器创建 --> <constant name="struts.objectFactory" value="spring" /> struts.serve.static.browserCache 该属性设置浏览器是否缓存静态内容。当应用处于开发阶段时,我们希望每次请求都获得服务器的最新响应,则可设置该属性为false。 struts.enable.DynamicMethodInvocation 该属性设置Struts 2是否支持动态方法调用,该属性的默认值是true。如果需要关闭动态方法调用,则可设置该属性为false。 struts.enable.SlashesInActionNames 该属性设置Struts 2是否允许在Action名中使用斜线,该属性的默认值是false。如果开发者希望允许在Action名中使用斜线,则可设置该属性为true。 struts.tag.altSyntax 该属性指定是否允许在Struts 2标签中使用表达式语法,因为通常都需要在标签中使用表达式语法,故此属性应该设置为true,该属性的默认值是true。 struts.devMode 该属性设置Struts 2应用是否使用开发模式。如果设置该属性为true,则可以在应用出错时显示更多、更友好的出错提示。该属性只接受true和flase两个值, 该属性的默认值是false。通常,应用在开发阶段,将该属性设置为true,当进入产品发布阶段后,则该属性设置为false。 struts.i18n.reload 该属性设置是否每次HTTP请求到达时,系统都重新加载资源文件。该属性默认值是false。在开发阶段将该属性设置为true会更有利于开发,但在产品发布阶段应将该属性设置为false。 提示 开发阶段将该属性设置了true,将可以在每次请求时都重新加载国际化资源文件,从而可以让开发者看到实时开发效果;产品发布阶段应该将该属性设置为false, 是为了提供响应性能,每次请求都需要重新加载资源文件会大大降低应用的性能。 struts.ui.theme 该属性指定视图标签默认的视图主题,该属性的默认值是xhtml。 struts.ui.templateDir 该属性指定视图主题所需要模板文件的位置,该属性的默认值是template,即默认加载template路径下的模板文件。 struts.ui.templateSuffix 该属性指定模板文件的后缀,该属性的默认属性值是ftl。该属性还允许使用ftl、vm或jsp,分别对应FreeMarker、Velocity和JSP模板。 struts.configuration.xml.reload 该属性设置当struts.xml文件改变后,系统是否自动重新加载该文件。该属性的默认值是false。 struts.velocity.configfile 该属性指定Velocity框架所需的velocity.properties文件的位置。该属性的默认值为velocity.properties。 struts.velocity.contexts 该属性指定Velocity框架的Context位置,如果该框架有多个Context,则多个Context之间以英文逗号(,)隔开。 struts.velocity.toolboxlocation 该属性指定Velocity框架的toolbox的位置。 struts.url.http.port 该属性指定Web应用所在的监听端口。该属性通常没有太大的用户,只是当Struts 2需要生成URL时(例如Url标签),该属性才提供Web应用的默认端口。 struts.url.https.port 该属性类似于struts.url.http.port属性的作用,区别是该属性指定的是Web应用的加密服务端口。 struts.url.includeParams 该属性指定Struts 2生成URL时是否包含请求参数。该属性接受none、get和all三个属性值,分别对应于不包含、仅包含GET类型请求参数和包含全部请求参数。 struts.custom.i18n.resources 该属性指定Struts 2应用所需要的国际化资源文件,如果有多份国际化资源文件,则多个资源文件的文件名以英文逗号(,)隔开。 struts.dispatcher.parametersWorkaround 对于某些Java EE服务器,不支持HttpServlet Request调用getParameterMap()方法,此时可以设置该属性值为true来解决该问题。该属性的默认值是false。 对于WebLogic、Orion和OC4J服务器,通常应该设置该属性为true。 struts.freemarker.manager.classname 该属性指定Struts 2使用的FreeMarker管理器。该属性的默认值是org.apache.struts2.views.freemarker.FreemarkerManager,这是Struts 2内建的FreeMarker管理器。 struts.freemarker.wrapper.altMap 该属性只支持true和false两个属性值,默认值是true。通常无需修改该属性值。 struts.xslt.nocache 该属性指定XSLT Result是否使用样式表缓存。当应用处于开发阶段时,该属性通常被设置为true;当应用处于产品使用阶段时,该属性通常被设置为false。 struts.configuration.files 该属性指定Struts 2框架默认加载的配置文件,如果需要指定默认加载多个配置文件,则多个配置文件的文件名之间以英文逗号(,)隔开。 该属性的默认值为struts-default.xml,struts-plugin.xml,struts.xml,看到该属性值,读者应该明白为什么Struts 2框架默认加载struts.xml文件了。 struts.objectFactory 该属性指定Struts 2中的action由哪个容器创建 ### Struts2 Constant 配置详解 #### 一、引言 在Struts2框架中,`constant`配置项主要用于设定框架的一些基本行为和优化选项。这些配置项可以帮助开发者更好地控制Struts2的行为,比如国际化编码设置、请求处理后缀等。本文将详细解析给定的Struts2配置项,并探讨其作用与应用场景。 #### 二、Struts2常量配置项详解 ##### 1. struts.i18n.encoding **作用:** 指定Web应用的默认编码集,等同于调用`HttpServletRequest`的`setCharacterEncoding`方法。 **配置示例:** ```xml <constant name="struts.i18n.encoding" value="UTF-8" /> ``` **解释:** 此配置项用于设置整个Web应用的字符编码为UTF-8,确保页面能正确处理中文等多语言字符。 ##### 2. struts.action.extension **作用:** 指定需要Struts2处理的请求后缀,默认值为`action`,即所有匹配`*.action`的请求都由Struts2处理。用户也可以指定多个请求后缀,中间以英文逗号`,`分隔。 **配置示例:** ```xml <constant name="struts.action.extension" value="do" /> ``` **解释:** 将请求后缀设为`do`,意味着所有以`.do`结尾的URL请求都将交由Struts2处理。 ##### 3. struts.serve.static.browserCache **作用:** 设置浏览器是否缓存静态内容,默认值为`true`(适用于生产环境),开发阶段建议关闭。 **配置示例:** ```xml <constant name="struts.serve.static.browserCache" value="false" /> ``` **解释:** 在开发过程中,为了能够及时看到最新的更改结果,通常设置此属性为`false`以禁用浏览器对静态资源的缓存。 ##### 4. struts.configuration.xml.reload **作用:** 当Struts2的配置文件(如`struts.xml`)发生更改时,系统是否自动重新加载该文件,默认值为`false`(适用于生产环境),开发阶段建议开启。 **配置示例:** ```xml <constant name="struts.configuration.xml.reload" value="true" /> ``` **解释:** 在开发环境中,启用此选项可以使开发者无需重启服务器即可查看到配置文件更改的效果。 ##### 5. struts.devMode **作用:** 设置Struts2应用是否使用开发模式,若设置为`true`,则在应用出错时可以显示更多、更友好的错误提示。 **配置示例:** ```xml <constant name="struts.devMode" value="true" /> ``` **解释:** 开发模式下,系统会输出更多的调试信息,有助于定位和解决问题。 ##### 6. struts.ui.theme **作用:** 指定默认的视图主题。 **配置示例:** ```xml <constant name="struts.ui.theme" value="simple" /> ``` **解释:** `simple`主题是一种简洁的默认样式,适用于大多数应用。 ##### 7. struts.objectFactory **作用:** 指定Struts2中的Action由哪个容器创建。 **配置示例:** ```xml <constant name="struts.objectFactory" value="spring" /> ``` **解释:** 通过此配置,Struts2框架会使用Spring容器来创建Action实例,这有利于整合Spring和其他框架。 #### 三、其他常用配置项解析 ##### 8. struts.enable.DynamicMethodInvocation **作用:** 设置Struts2是否支持动态方法调用,默认值为`true`。 **配置示例:** ```xml <constant name="struts.enable.DynamicMethodInvocation" value="false" /> ``` **解释:** 关闭动态方法调用可以提高安全性,但可能会导致灵活性下降。 ##### 9. struts.enable.SlashesInActionNames **作用:** 设置Struts2是否允许在Action名中使用斜线,默认值为`false`。 **配置示例:** ```xml <constant name="struts.enable.SlashesInActionNames" value="true" /> ``` **解释:** 允许在Action名称中使用斜线可以更加灵活地组织Action命名空间。 ##### 10. struts.tag.altSyntax **作用:** 指定是否允许在Struts2标签中使用表达式语法,默认值为`true`。 **配置示例:** ```xml <constant name="struts.tag.altSyntax" value="true" /> ``` **解释:** 此配置项允许开发者在Struts2标签中使用表达式语法,增强标签的功能性和灵活性。 ##### 11. struts.i18n.reload **作用:** 设置是否每次HTTP请求到达时,系统都重新加载资源文件,默认值为`false`。 **配置示例:** ```xml <constant name="struts.i18n.reload" value="true" /> ``` **解释:** 在开发阶段,此选项可以实时更新国际化资源,方便开发者调试;而在生产环境中,关闭它以提高性能。 ##### 12. struts.ui.templateDir **作用:** 指定视图主题所需模板文件的位置,默认值为`template`。 **配置示例:** ```xml <constant name="struts.ui.templateDir" value="template" /> ``` **解释:** 此配置项指定了视图主题模板文件的存放目录。 ##### 13. struts.ui.templateSuffix **作用:** 指定模板文件的后缀,默认值为`ftl`。 **配置示例:** ```xml <constant name="struts.ui.templateSuffix" value="ftl" /> ``` **解释:** 此配置项指定了模板文件的后缀名,可以根据实际需求选择`ftl`、`vm`或`jsp`等。 ##### 14. struts.velocity.configfile **作用:** 指定Velocity框架所需的`velocity.properties`文件的位置,默认值为`velocity.properties`。 **配置示例:** ```xml <constant name="struts.velocity.configfile" value="velocity.properties" /> ``` **解释:** 此配置项指定了Velocity配置文件的具体位置。 ##### 15. struts.velocity.contexts **作用:** 指定Velocity框架的Context位置,多个Context之间以英文逗号`,`分隔。 **配置示例:** ```xml <constant name="struts.velocity.contexts" value="context1,context2" /> ``` **解释:** 此配置项用于指定Velocity框架的多个Context位置,以便于管理和使用不同的模板环境。 以上就是Struts2框架中一些常用且重要的`constant`配置项的详细解析。这些配置项在实际开发中扮演着至关重要的角色,合理设置它们能够极大地提升应用程序的稳定性和可维护性。
<constant name="struts.i18n.encoding" value="UTF-8" />
<!--
该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。
-->
<constant name="struts.action.extension" value="do" />
<!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache " value="false" />
<!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true" />
<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->
<constant name="struts.devMode" value="true" />
<!-- 默认的视图主题 -->
<constant name="struts.ui.theme" value="simple" />
<!-- 该属性指定Struts 2中的action由Spring容器创建 -->
<constant name="struts.objectFactory" value="spring" />
<!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<!--
该属性指定需要Struts 2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts 2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。
-->
<constant name="struts.action.extension" value="do" />
<!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache " value="false" />
<!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true" />
<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助