1. 名称规范:
引用
[Name].properties // Common and origin name
[Name]_[Language]_[Country].properties // For specific language and country
//Samples
Labels.properties
Labels_zh.properties
Labels_zh_CN.properties
Labels_en.properties
2. 选择顺序:
a. 首先根据浏览器当前语言设置,寻找有当前语言和国家后缀的文件(如Labels_zh_CN.properties),如果有,读取并显示。
b. 如果a没有,寻找有当前语言后缀的文件(如Labels_zh.properties)。
c. 如果b也没有,寻找没有后缀的默认文件(如Labels.properties)。
注意:
改变浏览器语言后,需要重新打开浏览器才能看到效果。
3. 使用资源文件
a. 在src目录下创建com.john.resources包,在该包里新建Labels.properties文件,加入:
label.page=My page
b. 在struts-config.xml文件中加入指定资源文件的引用
<struts-config>
<!-- parameter指定资源文件的全限定名,key指定页面引用的名称 -->
<message-resources parameter="com.john.resources.Labels" key="Labels" />
</struts-config>
c. 在jsp文件中使用:
<!-- 引入struts的bean标签:-->
<%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %>
<!-- key指定键,bundle指定资源文件的名称,和struts-config中的key一致 -->
<bean:message key="label.page" bundle="Labels" />
也可以使用jstl的fmt标签:
<!-- 引入jstl的fmt标签:-->
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<!-- basename指定资源文件的全限定名,而不是struts-config中的key -->
<fmt:bundle basename="com.john.resources.Labels">
<fmt:message key="label.username" />
</fmt:bundle>
<!-- Utilize setBundle tag when the resource would be used many places -->
<fmt:setBundle basename="com.john.resources.Labels" var="inflation" scope="page" />
<fmt:message key="label.username" bundle="${inflation}" />
<fmt:message key="label.standardise" bundle="${inflation}" />
分享到:
相关推荐
Struts1 和 Struts 2 是两种非常流行的Java Web开发框架,它们都提供了对国际化(i18n)的支持,使得应用能够根据用户的语言和地区显示相应的本地化内容。国际化是软件设计的一个重要方面,它允许应用程序在全球范围...
Struts框架的国际化支持允许开发者创建多语言的应用程序,以满足全球不同地区用户的语言需求。国际化(I18N)是软件设计的一个重要方面,它确保程序可以根据用户的地域设置显示相应的语言内容。在Struts中,这一功能...
在JSP页面中,可以通过`('login.username')"`这样的标签来引用资源文件中的属性,实现页面内容的国际化。 为了测试不同语言的显示效果,开发者可以调整浏览器的语言环境设置,比如在Firefox中选择“工具”->“选项...
- **资源文件支持**:Struts 1.2 支持将国际化资源存储在 `.properties` 文件中,每个文件对应一个特定的 `Locale`。 - **标签库**:Struts 1.2 提供了一系列用于显示和处理国际化内容的标签,如 `<s:text>` 标签...
在Struts1中实现国际化(i18n)是提高应用程序可扩展性和适应不同语言环境的重要手段。下面将详细解释如何在Struts1中进行国际化实践,并结合给出的实例进行解析。 一、国际化(i18n)基础 国际化是指软件设计时...
- 可以通过`<result>`标签中的`type`属性设置国际化资源文件,以便在特定的结果类型下使用相应的语言资源。 #### 三、后端实现国际化 1. **使用`Locale`对象**:`Locale`对象用于表示用户所在的地区及语言环境。...
在国际化(i18n)方面,Struts1提供了强大的支持,使得应用程序可以适应不同语言和地区的用户需求。以下是关于Struts1.x国际化的一些核心知识点: 1. **资源包(Resource Bundle)**: - 在Java中,资源包是包含...
这个文件可能包含了Struts2的配置、国际化资源文件以及相关的Java代码示例,供学习者参考和实践。 总之,理解和掌握Struts2的国际化以及利用Eclipse的国际化插件进行资源文件管理是提高Java Web开发技能的重要一环...
总结,这个Struts2国际化例子源码展示了如何在Java web应用中实现多语言支持,通过配置Struts2框架、编写Action类、创建资源文件以及在JSP页面中使用标签,实现了对不同语言环境的适应。这个例子对于理解和实践...
首先,我们需要了解如何在Struts1.x中设置国际化资源文件。这些文件通常是.properties格式,例如`messages_en.properties`(英语版本)和`messages_zh_CN.properties`(简体中文版本)。在这些文件中,开发者定义了...
1. **创建资源束文件**:在项目的`src/main/resources`目录下创建对应的资源文件,比如`messages.properties`作为默认语言(通常是英文),然后根据需要添加其他语言的文件。 2. **配置Struts2**:在`struts.xml`...
1. **创建资源文件**:为每种支持的语言创建一个.properties文件,如前所述,键是文本标识符,值是本地化的文本。 2. **配置Struts2**:在Struts2的配置文件(通常为`struts.xml`)中,我们需要指定默认的资源包和...
首先,在`struts.xml`配置文件中,我们需要声明全局的国际化资源文件。通过设置常量`struts.custom.i18n.resources`的值为`message`,我们指定了基础名称(Basename): ```xml <constant name="struts.custom.i18n...
首先,国际化的核心在于资源文件,通常命名为`Messages.properties`,其中包含了应用程序中的所有可本地化的字符串。这些文件应该位于`src/main/resources`目录下,每个语言版本一个文件,如`Messages_en.properties...
在Web应用中,国际化通常通过资源文件来实现,这些文件存储了应用中的文本和格式化信息,如错误消息、按钮标签等。在Struts2中,我们可以创建名为`messages.properties`的默认资源文件,并根据需要为不同的语言和...
1. **创建资源文件**: 在项目的类路径下创建一个名为`com/yourpackage/i18n`的目录,然后在这个目录下创建对应语言的资源文件。每个文件都应包含键值对,键是用于在代码中引用的标识符,值是对应的本地化字符串。 ...
然后,我们需要在 `struts.xml` 文件中配置国际化资源文件的位置,并设置 `struts.custom.i18n.resources` 常量。 在 JSP 页面中,我们可以使用 `<s:text>` 标签来显示国际化文本。例如,我们可以使用以下语句来...
1. **创建资源文件**:在项目的`src/main/resources`目录下,为每种语言创建相应的资源文件,如`messages.properties`(默认语言,通常为英文)和其他语言版本。 2. **配置Struts2**:在`struts.xml`配置文件中,...