如何配置Struts2全局资源包
精华
小牛编辑
175浏览
2023-03-14
通常情况下,您可能需要一个全局资源包(属性文件)来存储信息,可用于在应用程序中的所有类。
在Struts2,有三种方式来配置全局资源包:
1. struts.properties
配置全局资源包在 “struts.properties” 文件,在这里你定义一个名为“global.properties”的属性文件为全局资源包。
struts.custom.i18n.resources = global
对于多个资源包,只是用逗号分隔属性文件。
struts.custom.i18n.resources = global, another-properties-file
2. struts.xml
或者,可以配置全局资源包在 struts.xml 配置文件中的常量值。
<struts> <constant name="struts.custom.i18n.resources" value="global" /> </struts>
3. listener
最后一个方法是使用servlet监听器加载一个属性文件作为全局资源包。
package com.yiibai.common.listener; import javax.servlet.ServletContextEvent; import javax.servlet.ServletContextListener; import com.opensymphony.xwork2.util.LocalizedTextUtil; public class GlobalMessagesListener implements ServletContextListener { private static final String DEFAULT_RESOURCE = "global"; public void contextInitialized(ServletContextEvent arg0) { LocalizedTextUtil.addDefaultResourceBundle(DEFAULT_RESOURCE); } public void contextDestroyed(ServletContextEvent arg0) { } }
web.xml
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Struts 2 Web Application</display-name> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class> com.yiibai.common.listener.GlobalMessagesListener </listener-class> </listener> </web-app>
下载源代码(globalresource)– http://pan.baidu.com/s/1sj1Rg7r