下面小编要和大家分享的是Struts2中的加载资源文件的方式!对于一个大型的应用而言,可能资源文件非常庞大,因此有必要将它分成多个较小的文件,Struts2可以指定包范围资源文件,类范围资源文件,以及临时指定资源文件。
1,包范围资源文件
Struts2指定包范围资源文件的方法是:在包的根目录下建立多个名为package_<language>_<country>.properties文件,这个文件的命名同普通资源文件的命名方式一样。建立了此文件之后,该包下的所有Action都可以访问资源文件。例:我们在lee这个包下建立多个资源文件,文件名分别为:package.properties,package_en_US.properties,package_zh_CN.properties;那么在此包中所有的Action都可以获取资源文件,获取的方式同普通的一样,如下:getText("succTip")。如果存在包资源文件,则包资源文件中的内容将优先于普通的资源文件。
2,Action范围资源文件
Struts2还允许为Action单独指定一份国际化资源文件。它的方式为:在Action类文件所在的路径下建立多个文件名为<ActionName>_<language>_<country>.properties文件。例:在LoginAction的同目录下建立多个资源文件:LoginAction.properties,LoginAction_en_US.properties,LoginAction_zh_CN.properties;那么这个资源文件仅对此Action开放。获取资源文件中内容的方式不变。如果存在Action范围资源文件,则此文件中的内容将优先于所有的资源文件。
3,临时指定资源文件
Struts的页面有一个标签<s:i18n>,可以通过它来指定资源文件的位置。这个标签一般可做为其它标签的父标签,这样其它标签所读取的内容就是<s:i18n>标签所指定的资源文件中的内容。用法如下:
<%@ page language="java" contentType="text/html; charset=GBK"%>
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<head>
<title>
<s:i18n name="tmp">
<s:text name="loginPage"/> //读取WEB\INF\classes\tmp.properties资源文件中的loginPage的内容
</s:i18n>
</title>
</head>
<body>
<s:i18n name="tmp">
<s:form action="Login">
<s:textfield name="username" key="user"/>
<s:textfield name="password" key="pass"/>
<s:submit key="login"/>
</s:form>
</s:i18n>
</body>
</html>
通常若查找不到所需要的资源文件中的内容,都是直接输出KEY的字符串值
出处: 程序员之家 http://www.sunxin.org/
分享到:
相关推荐
配置文件在Struts2中起着至关重要的作用,它们定义了请求如何被映射到特定的Action,以及如何处理结果。了解Struts2配置文件的加载顺序对于优化应用性能和解决配置问题至关重要。 Struts2的配置主要分布在以下几个...
4. **Spring集成**:如果您的应用使用Spring框架,那么需要加载Spring相关的JAR文件,如`spring-beans.jar`, `spring-context.jar`等,以及Struts2与Spring的整合包,如`struts2-spring-plugin.jar`。 5. **其他...
在构建Struts2项目时,第一步是确保项目中包含了所有必需的JAR文件。根据题目中的描述,以下是一些关键的库: - **comms-logging-1.0.4.jar**:用于日志记录。 - **freemarker-2.3.1.jar**:模板引擎,用于动态页面...
在Struts2中,文件上传是一个常见的需求,可以帮助用户从客户端上传文件到服务器。本文将详细讲解Struts2框架下三种不同的文件上传方式:copy模式、字节流上传和字符流上传。 1. Copy模式文件上传: Copy模式是...
然而,在国际化(I18N)的应用场景下,Struts2资源文件在JSP页面中显示乱码的问题常常困扰着开发者。本文将深入探讨这一问题,并详细介绍两种有效的解决方案。 ### Struts2资源文件与乱码问题 Struts2框架通过资源...
1. **配置Struts2 Action**:在Struts2中,我们需要定义一个Action类,该类负责处理用户的下载请求。在Action中,我们创建一个方法,该方法将返回一个`StreamingResult`结果类型。`StreamingResult`是Struts2专门...
3. struts.configuration.files:这是Struts2自动加载的一个配置文件列表,Struts2会自动加载这些文件中的设置和参数。 4. struts.configuration.xml.reload:这是一个布尔值,用于确定是否加载XML配置文件。如果...
在这个“Struts2实现文件下载功能”的示例中,我们将深入探讨如何利用Struts2框架来实现在web应用中让用户下载文件的功能。 首先,我们需要理解文件下载的基本原理。在Web应用中,当用户点击一个链接或提交一个表单...
该属性用于指定加载Struts 2配置文件的配置文件管理器,默认值为`org.apache.struts2.config.DefaultConfiguration`,这是Struts 2默认的配置文件管理器。若需要实现自定义的配置管理器,则需创建一个实现了`...
对于Struts2项目,资源文件需要放置在`src`目录下,并在`struts.xml`配置文件中声明资源包,例如添加 `<constant name="struts.custom.i18n.resources" value="app"></constant>`,这样Struts2就会自动加载资源文件...
struts2常用资源文件包 commons-logging-1.1.jar freemarker-2.3.8.jar ognl-2.6.11.jar struts2-core-2.0.6.jar xwork-2.0.1.jar
1. **资源文件**:与Struts1类似,也需要创建多个`.properties`文件,但Struts2可以使用Spring的`MessageSource`接口,这允许更高级的配置和资源查找策略。 2. **配置struts.properties或struts.xml**:在`struts....
在这个“struts 预加载数据demo”中,我们将深入探讨如何使用Struts2框架结合Ajax技术来实现这一功能。以下是关于这个主题的详细解释: 1. **Struts2框架**:Struts2是一个基于MVC设计模式的Java Web框架,它提供了...
3. `ognl.jar`:Object-Graph Navigation Language (OGNL)是Struts2中使用的表达式语言,用于在视图层和模型层之间传递数据。 4. `freemarker.jar`和`velocity.jar`:这两种是模板引擎,用于生成动态HTML页面。...
怎么读取struts2.0的资源文件,不会struct2的小伙伴们,学一学吧
在Struts2中,`struts.xml`是核心配置文件,它定义了应用的行为、动作、结果和其他组件。为了在Eclipse这样的集成开发环境中获得代码提示和自动完成,我们需要引入DTD(文档类型定义)文件,例如`struts-2.3.dtd`。 ...
在Struts2框架的应用开发过程中,配置文件起到了至关重要的作用。Struts2主要依赖于两种基于XML的配置文件:`web.xml` 和 `struts-config.xml`(通常命名为 `struts.xml`)。本文将详细介绍这两种配置文件的作用及...
- **Interceptor**:在`package`元素内部,可以定义拦截器或引用拦截器堆栈,拦截器是Struts2中非常重要的组件,用于在Action执行前后进行一系列的前置和后置处理操作,比如登录验证、数据校验等。 - **Result ...
以下是对Struts2中文件上传及`codeFilter`的详细解释: **1. Struts2文件上传机制** Struts2提供了内置的支持来处理文件上传,主要利用了Apache Commons FileUpload库。在Struts2的Action类中,可以定义一个字段,...