struts2核心配置文件:web.xml、struts.properties、struts.xml
web.xml
配置过滤器、session会话时间、欢迎界面、错误界面、监听器、控制器等。
基本格式:
常见标签元素:
1.welcome-file-list和welcome-file元素
指定欢迎界面,可以同时指定多个欢迎界面,服务器会按顺序查找欢迎界面,。
2.filter和filter-mapping元素
filter元素用于声明一个过滤器,使用该元素可以同时拦截多个请求的URL。
filter-mapping元素用来指定于过滤器关联的URL。
3.error-page元素
如果不希望用户看到原始的错误信息时,可以在web.xml中设置error-page元素中进行配置解决。
4.listener元素和listenner-class
listener元素用来注册监听器类,并使用子元素listener-class指定监听程序的完整限定类名。
5.session-config元素
指定会话过期时间。
6.init-param元素
定义参数。
struts.properties
可以管理struts2框架中定义的大量常量。注意该文件必须放在web应用下的类加载路径下才能使用,即WEB-INF/classes下。由于src下的文件编译后放在WEB-INF/classes下,则通常我们放在src路径下。
struts.proterties常用元素:
struts.i18n.encoding 指定web应用的默认编码集
struts.devMode 指定struts2是否使用开发模式。开发模式在程序出错时显示更详细的出错提示。一般在开发阶段设置为true,发布后设置为false
struts.configuration 该常量指定Struts2框架的配置管理器,如果程序员自己开发一个配置管理器,则需要实现configuration接口,该类会自动加载struts2的配置文件。
struts.locale 指定web应用的默认locale,默认为en_US
struts.action.extension 指定struts2处理的请求后缀。可以用逗号隔开设置多个请求后缀。
struts.tag.altSyntax 指定struts2中是否使用表达式语句,一般设置为true。
struts.ui.theme 指定struts2标签默认的主题。默认值为xhtml。
struts.custom.i18n.resources 指定web应用所需要的国际化资源文件,多个时用逗号隔开
struts.custom.properties 指定加载附加的配置文件的位置。
struts.enable.DynamicMethodInvocation 指定struts2是否支持动态方法调用。默认为true
struts.i18n.reload 指定国际化信息是否自动加载,默认为true
struts.url.http.port 指定web应用的端口
struts.xml
主要用来配置action和http请求的对应关系,以及配置逻辑视图和物理视图资源的对应关系。与也可以配置常量、导入其他配置文件等。
struts.xml常见元素
package元素:用来配置包;name属性来唯一标识包(必选属性);extends属性指定该包继承自其他包;namespace指定命名空间,标识此包下的action的访问路径;abstract属性指定该包为抽象包。
namespace指定命名空间的作用体现,当包指定命名空间之后,该包所包含的Action处理的URL应该是命名空间+Action名。(其中默认空间为“/”)例如:http://127.0.0.1:8080/action/login.action。
action元素:配置指定action对象来处理HTTP请求。其中属性包含:name属性(必须)标识action,指定该action所处理的请求的URL;class属性指定action对象所对应的实现类(默认为com.opensymphony.xwork2.ActionSupport);method属性指定请求action时调用的方法;converter属性指定类型转换器的类。
如下代码所示:
result元素:设置返回给浏览器的视图;配置result元素是需指定name和type两个属性。name属性对应从Action方法返回的值默认为success。type属性指定结果类型,默认为dispatch;结果类型有:dispatch将请求forward(转发)到指定的JSP界面;redirect将请求重定向到指定的资源视图;chain处理action链;freemarker指定使用Freemarker模板作为视图;httpheader控制特殊的http行为;redirect-action直接跳转到其他action;stream向浏览器返回一个inputStream;velocity指定使用velocity模板作为视图;xslt用于xml/xslt整合;plaintext显示某个页面的原始代码。
include元素:在一个struts.xml配置文件中包含其他的配置文件。注意:包含的文件格式也必须是标准的struts2配置文件。
global-results元素:配置包中的全局结果。
default-action-ref元素:该元素用来配置默认的Action;即当在Struts2配置中找不到对应的action时,使用默认的action来处理请求。注意该元素不能与global-results同时存在