Struts2的一些常量和含义的应用

本文介绍了Struts2框架中的默认配置及其作用,如action扩展名、静态资源缓存等,并解释了如何通过struts.xml文件覆盖这些配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,当我们学习一个框架的时,一般可以参考框架自带的示例项目。例如struts2,刚入门的时候,可以参考其自带的blank项目。当部署完这个项目后,开启tomcat服务,在地址栏里输入请求的action路径时,可以发现,虽然没有给该action定义扩展名,但是地址里输入的action路径没有扩展名或者扩展名为action时都可以通过。为什么呢?这是由struts2的默认配置属性决定的。

常量的默认配置在struts2-core-2.1.8.1/org/apache/struts2/default.properties文件里,像定义访问action的默认扩展名、开发模式设置、i18n以及默认字符编码等等,例如struts.action.extension=action,,

应当注意的是,一般情况不要修改框架系统的原始文件,如果要更改默认的配置项,可以采用覆盖的方式。struts.xml是struts2的基本配置文件之一。该文件内可以配置多个常量,以覆盖默认的常量配置,例如<constant name="struts.action.extension" value="do,," />表示action的可用扩展名为do或者不用扩展名。

常量可以在下面多个文件中进行定义,struts2加载常量的搜索顺序如下,后面的设置可以覆盖前面的设置:
default.properties文件
struts-default.xml
struts-plugin.xml
struts.xml
struts.properties(为了与webwork向后兼容而提供)
web.xml

下面列举几个常用的常量

### This can be used to set your default locale and encoding scheme
# struts.locale=en_US
struts.i18n.encoding=UTF-8//指定默认编码


# uses javax.servlet.context.tempdir by default
struts.multipart.saveDir=
struts.multipart.maxSize=2097152//上传文件大小限制


### Used by the DefaultActionMapper
### You may provide a comma separated list, e.g. struts.action.extension=action,jnlp,do
### The blank extension allows you to match directory listings as well as pure action names
### without interfering with static resources.
struts.action.extension=action,,//指定处理请求的后缀

### Used by FilterDispatcher
### This is good for development where one wants changes to the static content be
### fetch on each request.
### NOTE: This will only have effect if struts.serve.static=true
### If true -> Struts will write out header for static contents such that they will
###             be cached by web browsers (using Date, Cache-Content, Pragma, Expires)
###             headers).
### If false -> Struts will write out header for static contents such that they are
###            NOT to be cached by web browser (using Cache-Content, Pragma, Expires
###            headers)
struts.serve.static.browserCache=true//指定是否缓存静态资源,开发的时候最好关闭

### when set to true, Struts will act much more friendly for developers. This
### includes:
### - struts.i18n.reload = true
### - struts.configuration.xml.reload = true
### - raising various debug or ignorable problems to errors
###   For example: normally a request to foo.action?someUnknownField=true should
###                be ignored (given that any value can come from the web and it
###                should not be trusted). However, during development, it may be
###                useful to know when these errors are happening and be told of
###                them right away.
struts.devMode = false//开发时候设置为trus可以开发出更加详细的信息

### Standard UI theme
### Change this to reflect which path should be used for JSP control tag templates by default
struts.ui.theme=xhtml//设置默认视图,最好为simple

### Configuration reloading
### This will cause the configuration to reload struts.xml when it is changed
struts.configuration.xml.reload=false//设置为True一旦Struts.xml文件修改就自动加载


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值