`

struts2 配置国际化全局资源文件

阅读更多

struts.xml配置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
	<constant name="struts.action.extension" value="do,action"></constant>
	<!-- 定义国际化常量 -->
	<constant name="struts.custom.i18n.resources" value="cool"></constant>
	<!-- 国际化 -->
	<package name="person" namespace="/person" extends="struts-default">
		<action name="manage" class="com.cool.global.GlobalAction" >
			<result name="message">/WEB-INF/page/message.jsp</result> 
		</action>
	</package> 
</struts>
 

在项目的src目录下创建cool_en_US.properties,cool_zh_CN.properties两个文件

cool_en_US.properties  存放英文国际化信息

文件里只有一行代码,如下:

 

welcome={0},welcome to cool,{1}


cool_zh_CN.properties 存放中文国际化信息

 

welcome ={0},欢迎来到我的网站,{1}

录入中文的时候,以MyEclipse6.6为例会自动转换成下面的格式:

 

welcome ={0}\uFF0C\u6B22\u8FCE\u6765\u5230\u6211\u7684\u7F51\u7AD9\uFF0C{1}

 

创建com.cool.global.GlobalAction

 

GlobalAction.java

package com.cool.global;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;

public class GlobalAction extends ActionSupport{

	private static final long serialVersionUID = 1L;

	@Override
	public String execute() throws Exception {
		// TODO Auto-generated method stub
		ActionContext.getContext().put("message", this.getText("welcome",new String[]{"customer","play"}));
		return "message";
	}
	
}

 

WebRoot目录下创建JSP文件Global.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>国际化测试</title>    
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
  </head>
  <body>
   	<s:text name="welcome">
   		<s:param>customer</s:param>
   		<s:param>study</s:param>
   	</s:text>
  </body>
</html>
 

WebRoot/WEB-INF/page目录下创建message.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Message Page</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
  </head>
  <body>
    ${message }
  </body>
</html>

 

Action返回的值,访问地址

http://localhost:8080/struts2/person/manaage.action

 

JSP界面赋值,访问地址

http://localhost:8080/struts2/Global.jsp

 

这样所能够看到的都是中文的提示消息,当然想看到英文的提示消息,需要将浏览器的语言更改为英文。

在IE的,工具->Internet选项->语言,在弹出的对话框中将中文替换为英文即可。

 

测试完成后别忘了切换回中文。

 

以上

分享到:
评论

相关推荐

    Struts1 和 Struts 2 国际化全局资源

    ### Struts2 国际化全局资源 Struts2的国际化处理更加灵活,它支持动态资源加载和更丰富的配置选项。 1. **资源文件**:与Struts1类似,也需要创建多个`.properties`文件,但Struts2可以使用Spring的`...

    自定义Tag标签的使用、Struts2国际化全局资源配置(老鸟请绕道)

    Struts2框架提供了强大的自定义标签支持,结合国际化全局资源配置,可以实现多语言环境下的动态页面展示。 首先,我们来了解一下自定义Tag标签的创建过程。在Java中,自定义标签通常基于JSP标准标签库(JSTL)的Tag...

    struts2框架国际化

    在配置文件中定义全局异常处理,通过`key`属性指定资源文件中的键,如`&lt;global-exception-mappings&gt;&lt;exception key="java.lang.Throwable" result="error"/&gt;&lt;/global-exception-mappings&gt;`。 10. **测试和部署** ...

    ·Struts2配置文件介绍 超级详细

    - **struts.properties**:该文件主要用于配置Struts2的全局属性,如默认使用的视图技术(如JSP或FreeMarker)等。 - **struts-default.xml**:这是Struts2框架提供的默认配置文件,包含了一些基本的拦截器和结果...

    struts2 配置文件

    - `&lt;message-resources&gt;`: 国际化资源文件配置。 - `&lt;plug-in&gt;`: 插件配置。 ##### 2. 关键配置项 - **`&lt;form-bean&gt;`**: - 定义表单Bean的属性和验证规则。 - **`&lt;action-mapping&gt;`**: - 映射Action的执行逻辑...

    Struts2 使用 Struts2 实现国际化

    总结,实现Struts2的国际化涉及资源文件的创建、配置Struts2的`struts.xml`、设置locale以及在JSP页面中使用国际化标签库。理解和掌握这些步骤对于开发全球化应用程序至关重要。通过阅读源码和利用相关工具,开发者...

    struts2国际化 标签 页面 处理类

    首先,在`struts.xml`配置文件中,我们需要声明全局的国际化资源文件。通过设置常量`struts.custom.i18n.resources`的值为`message`,我们指定了基础名称(Basename): ```xml &lt;constant name="struts.custom.i18n...

    struts1.2 国际化

    - **标签库**:Struts 1.2 提供了一系列用于显示和处理国际化内容的标签,如 `&lt;s:text&gt;` 标签用于显示资源文件中的消息。 - **配置文件**:可以在 `struts-config.xml` 配置文件中指定默认的 `Locale`,并通过 `...

    Struts2的国际化

    5. **全局资源文件**:最终查找`struts.properties`中设置的`struts.custom.i18n.resources`所指向的全局资源文件。 这种多层次的查找机制,使得Struts2的国际化配置既灵活又强大,能够满足不同场景的需求。 #### ...

    struts配置的文件 连接池 mysql等配置文件

    10. **国际化支持**:Struts2支持多语言,可以通过配置资源文件来实现。在`struts.properties`或`struts.xml`中指定资源文件的路径。 以上就是关于Struts2配置文件的详细讲解,包括核心配置文件`struts.xml`的使用...

    struts2国际化测试

    2. 在`struts.xml`中配置国际化结果类型和全局结果。 3. 在Action类中处理语言选择并设置上下文中的语言。 4. 使用Struts2标签展示国际化文本。 5. 实现用户界面中的语言切换功能。 通过以上步骤,我们可以为Struts...

    struts2配置文件以及代码示例

    在Struts2中,配置文件扮演着至关重要的角色,它定义了应用的行为、组件之间的交互逻辑以及各种资源的映射关系。 #### 二、Struts2配置文件详解 **配置文件格式:** Struts2配置文件通常以`struts.xml`命名,采用...

    STRUTS2国际化

    总之,Struts2的国际化功能提供了一种灵活的方式来支持多语言应用,开发者只需要维护一套包含各种语言的资源文件,就可以轻松地为不同地区的用户提供定制的界面和消息。这对于全球化部署的Web应用来说,是非常关键的...

    struts2 jar包及配置文件

    本资源包含Struts2的核心jar包和相关的配置文件,对于学习和开发基于Struts2的应用来说是非常宝贵的。 首先,我们来了解一下Struts2的核心jar包。这些jar文件通常包括以下组件: 1. **struts2-core.jar**:这是...

    struts2语言国际化

    Struts2语言国际化提供了便捷的方式,通过配置拦截器、资源文件、Action以及页面元素,使得Web应用可以支持多种语言。这不仅提升了用户体验,也为全球化部署提供了基础。在实际开发中,根据项目需求,可能还需要考虑...

    SSH笔记_Struts2配置

    2. **.struts2.xml配置文件** - **全局配置**:在`struts-default.xml`或`struts-plugin.xml`中,可以设置全局拦截器、常量等。 - **应用配置**:在`struts.xml`中定义Action、结果类型、拦截器栈等,这是应用的...

    畅所欲言struts2的国际化

    - **全局资源文件**:首先,你需要创建两个或多个资源文件,如`globalMessage_en_US.properties`和`globalMessage_zh_CN.properties`,分别存储不同语言的文本。在`struts.xml`中声明这些资源文件,例如通过`...

    struts2 资源配置

    1. **全局资源文件**: 通常在`struts.xml`或`struts.properties`文件中配置的资源文件,作用于整个应用。 2. **包级资源文件**: 可以为每个包指定特定的资源文件,文件通常命名为`package_language_country....

    Struts2的国际化(i18n)

    - **全局资源文件**:通常存放在src目录下,如`message_zh_CN.properties`和`message_en_US.properties`,在`struts.xml`配置文件中通过`&lt;constant&gt;`标签指定,例如`&lt;constant name="struts.custom.i18n.resources...

Global site tag (gtag.js) - Google Analytics