`

Struts1.2国际化实例

 
阅读更多

第一步:

 

建立国际化资源文件

比如在pack.java.resource包目录下建立一个中文和英文的国际化文件,

Messageresource_en.properties

label.id = ID
label.name = Name
label.sex = Sex
label.message = Java Message

 

Messageresource_zh.properties

label.id = \u7F16\u53F7
label.name = \u59D3\u540D
label.sex = \u6027\u522B
label.message = \u540E\u53F0\u83B7\u53D6\u56FD\u9645\u5316

  

 

第二步:

在struts-config中配置

 

<!-- 国际化资源文件; -->
<message-resources parameter="/pack/java/resource/Messageresource" />

 

第三步:

新建Action,本实例命名为LocalAResourceAction,具体代码如下:

public class LocalAResourceAction extends Action {
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm actionForm,
	HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		String languge = request.getParameter("language");
		//获取当前语言的国际化;
		Locale locale = request.getLocale();
		System.out.println("默认的国际化语言:"+locale.getLanguage()+"_"+locale.getCountry());
		
		//设置新的Locale对象;
		Locale newLocale = new Locale(languge,"");
		//重新覆盖session中国际化的对象;
		request.getSession(true).setAttribute(Globals.LOCALE_KEY, newLocale);
		System.out.println("重新设置的国际化语言:"+newLocale.getLanguage());
		return mapping.findForward("success");
	}
}

 

第四步:

在struts-config.xml中配置action:

<action-mappings>		
<!-- LocalAResourceAction配置 -->
<action path="/localAction"  type="pack.java.action.LocalAResourceAction" scope="request" parameter="p">
             <forward name="success" path="/beanTags.jsp"></forward>
</action>
</action-mappings>

 

第五步: 

新建JSP页面,取名为beanTags.jsp,代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
 
 <%@ taglib prefix="html"  uri="/WEB-INF/struts-html.tld" %>
 <%@ taglib prefix="bean"  uri="/WEB-INF/struts-bean.tld" %> 
 <%@ taglib prefix="logic"  uri="/WEB-INF/struts-logic.tld"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Struts1.2国际化实例</title>
</head>
<body>
	<p>bean:message标签的使用</p>
	<bean:message key="label.id" />:<br/>
	<bean:message key="label.name"/>:<br/>
	
	<!-- 国际化语言切换 -->
	<p>html:link标签的使用,国际化语言切换</p>
	<html:link action="localAction?language=zh" >中文</html:link><br/>
	<html:link action="localAction?language=en">英文</html:link>
	</body>
</html>

 

最后测试,启动服务器,

打开测试页面,

 

测试结果:

-------------------------------------------------------------------------------------------

ID
Name
<!-- 国际化语言切换 -->

html:link标签的使用,国际化语言切换

中文
英文    //点击英文。

 

-------------------------------------------------------------------------------------------

 

编号:
姓名:
<!-- 国际化语言切换 -->

html:link标签的使用,国际化语言切换

中文   //点击中文
英文

 

分享到:
评论

相关推荐

    struts1.2标签实例

    Struts1.2标签库包含了一系列与ActionForm、Action、Message资源、表单验证、国际化等相关的标签,这些标签使得开发者能够更高效地构建用户界面。例如,`&lt;s:textfield&gt;`用于创建输入字段,`&lt;s:submit&gt;`用于提交表单...

    STRUTS1.2中文文档

    7. **国际化和本地化**:Struts1.2支持多语言环境,通过资源包(Resource Bundle)管理不同语言的文本,使得应用可以轻松地适应不同地区的用户。 8. **异常处理**:Struts1.2提供了全局的异常处理机制,可以统一...

    struts1.2国际化和标签验证

    在这个“国际化和标签验证”实例项目中,我们将探讨如何在Struts1.2中实现国际化以及使用自定义标签进行表单验证。 国际化(i18n)是软件开发中的一个重要概念,它允许应用支持多种语言。在Struts1.2中,我们通常...

    struts1.2框架验证实例

    本实例旨在帮助开发者理解并掌握如何在实际项目中运用Struts1.2进行表单验证。 **一、Struts1.2框架概述** Struts1.2作为Apache组织的一员,提供了一种结构化的解决方案,用于简化Java Servlet和JSP的开发,使得...

    struts1.2 from表单提交包含list的对象

    此外,使用Maven或Ivy等构建工具可以帮助管理Struts1.2及其依赖,使得项目更加模块化和可维护。 至于"unicom"这个文件名,可能是指一个具体的案例或示例项目,它可能包含了处理Struts1.2表单提交的代码和配置。如果...

    struts1.2.jar包

    6. **国际化与本地化**:Struts1.2提供对多语言环境的支持,通过资源文件实现动态切换,便于实现国际化和本地化功能。 7. **异常处理**:Struts1.2提供了统一的异常处理机制,可以在全局范围内捕获和处理应用程序中...

    struts1.2源码研究

    1. **ActionServlet**:作为前端控制器,ActionServlet在Web应用启动时(依据web.xml中的`&lt;load-on-startup&gt;`标签配置)被实例化并调用`init`方法。初始化过程中,它主要执行以下操作: - 加载内部资源,如`Action...

    struts1.2源代码及文档

    5. **国际化**:Struts1.2支持多语言,查看源代码了解它是如何实现的,这对于开发全球化应用很有帮助。 6. **性能优化**:通过阅读源代码,我们可以找到一些性能瓶颈,例如ActionForm的缓存策略,以及ActionServlet...

    Struts 1.2 简单 实例

    包括: 四个页面:index.jsp logon.jsp show.jsp error.jsp 两个Form:RootForm.java LogonForm.java 两个Action:RootAction.java LogonForm.java 说明文档链接:...

    struts 1.2 ActionFrom表单验证

    Struts 1.2 是一个基于MVC设计模式的Java Web框架,用于简化开发Java Web应用程序。ActionForm是Struts 1.2中用于处理用户输入数据的核心组件,它负责在用户界面(JSP)与控制器(Action)之间传递数据。表单验证是...

    Struts1.2登录实例

    在本实例中,我们将深入探讨如何使用Struts1.2实现一个简单的登录功能,这将帮助我们理解Struts1的工作流程和配置细节。 首先,让我们了解Struts1的核心概念: 1. **ActionServlet**:这是Struts1的入口点,它是一...

    struts1.2项目指导

    Struts1.2是Apache软件基金会的一个开源框架,主要用于构建基于Java EE的Web应用程序。SSH(Struts、Spring、Hibernate)是Java开发中常见的“铁三角”组合,它结合了Struts的MVC架构、Spring的IoC和AOP特性以及...

    Struts 1.2+Hibernate3.3+Spring3.0整合详细步骤+源码

    Struts 1.2、Hibernate 3.3 和 Spring 3.0 是经典的Java企业级开发框架组合,常被称为SSH框架。这个组合被广泛应用于构建高效、可维护性的Web应用程序。下面将详细介绍这三个框架的整合步骤及源码解析。 **Struts ...

    struts1.2 上传实例总结

    在Struts 1.2框架中,文件上传是一个常见的需求,尤其在开发Web应用程序时。Struts 1.2提供了一种便捷的方式来处理文件上传,它通过`org.apache.struts.upload.FormFile`类来实现。这个类是Struts 1.x版本中处理文件...

    struts1.2的各项功能小demo

    6. **国际化(Internationalization, i18n)**:Struts1.2支持多语言环境,通过资源包(Resource Bundle)管理不同语言的文本。"demo"可能包含了不同语言版本的资源配置。 7. **Exception Handling**:Struts1.2...

    Struts1.2实例

    这个“Struts1.2实例”提供了实践Struts1.2框架的机会,便于学习和理解其核心概念与工作流程。 首先,我们来了解一下Struts1.2框架的关键组件: 1. **ActionServlet**:这是Struts框架的核心,负责处理所有的HTTP...

    struts1.2,spring2,hibernate3整合实例代码 改进

    这个"struts1.2,spring2,hibernate3整合实例代码 改进"提供了对这三者集成的一种改进方案,主要目标是提升系统的性能。 Struts1.2是一个基于MVC(Model-View-Controller)设计模式的Web应用框架,它主要负责处理...

    struts 1.2上传下载全部实例

    在本实例中,我们关注的是如何在 Struts 1.2 中实现文件上传和下载的功能。下面将详细解释涉及到的知识点。 1. **Action 类**: `FileAction` 类是 Struts 框架中的一个关键组件,它扩展了 `DispatchAction` 类,...

    struts1.2核心源码

    Struts1.2提供了强大的国际化支持,通过ResourceBundles处理不同语言和地区的文本资源。开发者可以在struts-config.xml中配置这些资源,使得应用能够根据用户的locale自动选择合适的内容。 9. **异常处理** ...

    Struts 1.2 API详细讲解

    九、国际化与本地化 Struts 1.2支持多语言环境,通过资源包(Resource Bundle)可以实现不同地区的文本和错误消息。 十、Exception Handling Struts 1.2提供了一套机制来处理运行时异常,通过全局ExceptionMapping...

Global site tag (gtag.js) - Google Analytics