1 准备资源文件。资源文件命名格式:filename_language_country.properties.
中文文件名为index_zh_CN.properties。
日文文件名为 index_ja_JP.properties。
英文文件名为 index_en.properties。
英文文件内容:
index.jsp.welcome=Colimas Library Management System
index.jsp.name=Name
index.jsp.userid=User ID
index.jsp.pass=Password
中文文件内容:
index.jsp.welcome=\u4f60\u597d
index.jsp.name=\u59d3\u540d
index.jsp.userid=\u7528\u6237\u540d
index.jsp.pass=\u5bc6\u7801
日文文件内容:
index.jsp.welcome=\u3044\u3089\u3063\u3057\u3083\u3044\u307e\u305b
index.jsp.name=\u59d3\u540d
index.jsp.userid=\u30e6\u30fc\u30b6\u30fcID
index.jsp.pass=\u30d1\u30b9\u30ef\u30fc\u30c9
\uxxxx是中文被转换后的ASCII码。可以使用native2ascii.exe工具转换。
2 struts-config.xml里配置资源文件
<message-resources parameter="resources.config.index" />
resources.config.index是classes目录下的resources/config子目录的index__xx_xx.properties文件.
struts根据你的浏览器的语言设置调用不同语言的资源文件。
例如:如果你的IE默认语言为中文则。Struts将使用index_zh_CN.properties。而在struts-config.xml里只需写出“index”即可
ActionMapping
<form-beans>
<!--1 Multi-Lanuage support formbean-->
<form-bean
name="SelectLanguageForm"
type="com.nova.colimas.web.form.SelectLanguageForm"/>
</form-beans>
<!-- =========================================== Global Forward Definitions -->
<global-forwards>
<!-- Default forward to "Welcome" action -->
<!-- Demonstrates using index.jsp to forward -->
<forward
name="index"
path="/pages/index.jsp"/>
</global-forwards>
<!-- =========================================== Action Mapping Definitions -->
<action-mappings>
<!-- 1 select language action -->
<action path="/SelectLanguageAction"
type="com.nova.colimas.web.action.SelectLanguageAction"
name="SelectLanguageForm"
scope="request">
</action>
…
</action-mappings>
3 jsp
<%@ page contentType="text/html; charset=UTF-8"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-logic" prefix="logic"%>
<html:html>
<Title><bean:message key="index.jsp.welcome"/></Title>
<body>
<logic:present name="user">
<H3>Welcome <bean:write name="LoginForm" property="userID" />!</H3>
</logic:present>
<logic:notPresent scope="session" name="user">
<H3>Welcome Colimas!</H3>
</logic:notPresent>
<html:errors />
<html:form action="/SelectLanguageAction.do">
<html:select property="language">
<html:option value="0">中文</html:option>
<html:option value="1">日本語</html:option>
<html:option value="2">English</html:option>
</html:select>
<html:submit>Select</html:submit>
</html:form>
<html:form action="/LoginAction.do">
<p><bean:message key="index.jsp.userid"/><input type="text" name="userID" value="tyrone1979" /><br>
<bean:message key="index.jsp.pass"/><input type="password" name="password" value="197913"/><br>
<html:submit><bean:message key="index.jsp.login"/></html:submit>
</p>
</html:form>
</body>
</html:html>
<bean:message key="index.jsp.welcome"/>引用资源文件的index.jsp.welcome属性
SelectLanguageAction.do调用Action实现语言转换。
4 Action
package com.nova.colimas.web.action;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessages;
//import org.apache.struts.upload.FormFile;
import com.nova.colimas.web.form.SelectLanguageForm;
import org.apache.struts.Globals;
import java.util.Locale;
public class SelectLanguageAction extends Action {
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception{
SelectLanguageForm myform=(SelectLanguageForm)form;
String lan=myform.getLanguage();
switch((new Integer(lan)).intValue()){
case 0 :
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
break;
case 1:
request.getSession().setAttribute(Globals.LOCALE_KEY, Locale.JAPAN);
break;
case 2:
request.getSession().setAttribute(Globals.LOCALE_KEY, Locale.ENGLISH);
break;
default:
request.getSession().setAttribute(Globals.LOCALE_KEY, Locale.ENGLISH);
break;
}
return mapping.findForward("index");
}
}
Form
/*
* Created on 2005/06/18
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package com.nova.colimas.web.form;
import org.apache.struts.action.ActionForm;
/**
* @author tyrone
**/
public class SelectLanguageForm extends ActionForm {
private String language;
public void Reset() {
MsoNorm
分享到:
相关推荐
下面将详细介绍如何在Struts1中实现多国语言功能。 1. **理解基本概念** - **国际化(i18n)**:是指使软件能够在不同的国家和地区使用,主要涉及日期、时间、数字格式、货币单位以及文本翻译等。 - **本地化...
在"Struts 之旅 - 多国语言"这个主题中,我们将深入探讨Struts框架如何支持多语言国际化(i18n)功能,这对于构建全球化应用程序至关重要。 1. **国际化(i18n)基础**: 国际化是指设计和实现软件,使其能够适应...
首先,实现语言切换的基本步骤包括: 1. **资源文件配置**:在Struts项目中,通常会创建一个或多个.properties文件来存储不同语言的文本资源。例如,我们可以创建`message_en.properties`(英文)和`message_zh_...
下面我们将深入探讨如何使用Struts1实现国际化语言切换。 首先,理解国际化的基本概念是必要的。国际化是一种设计方法,允许软件应用根据不同地区的文化、语言和习惯进行定制。在Web应用中,这通常通过资源包...
jsp项目开发实录 jsp项目开发实录 Struts 实现 程序完整 Struts 实现 程序完整 Struts 实现 程序完整 Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整Struts 实现 程序完整...
首先,我们来探讨"Struts2中的validation_多国语言版",这是Struts2的数据校验功能。Struts2提供了一种灵活的机制来验证用户输入,通过在Action类中定义校验规则或使用XML配置文件。当用户提交表单时,框架会自动...
下面我们将深入探讨如何在Struts2中实现国际化和多语言切换。 **一、国际化(i18n)基础** 国际化是指软件设计时考虑到不同地区的文化差异,使得软件可以通过简单的配置和扩展就能适应各种语言环境。在Java中,我们...
以下是实现Struts2国际化语言切换的详细步骤: 1. **创建资源包**: 首先,你需要为每种支持的语言创建一个资源包。资源包通常是以.properties为后缀的文本文件,例如`message_zh_CN.properties`(中文)和`...
Java 实现国际化是一种重要的...通过以上步骤和方法,我们可以有效地在Java和JSP应用程序中实现中英文语言的切换,为全球用户提供更友好的用户体验。在实际开发中,还需要结合项目需求和团队规范,灵活应用这些技术。
Struts2提供了强大的国际化支持,使得开发者能够轻松地实现应用的语言切换功能。下面将详细解释如何在Struts2中进行国际化设置,并实现自动语言切换。 首先,我们需要理解国际化的基本概念。国际化是一种设计方法,...
在“struts2实现自主选择页面语言”这个项目中,我们主要探讨的是如何利用Struts2的国际化(i18n)功能来支持多语言环境,使用户可以根据自己的偏好选择页面显示的语言。 首先,让我们了解一下什么是国际化(i18n)。...
Struts2是一个强大的...通过以上步骤,你将能够在Struts2应用中实现中英文的切换功能,同时也为支持更多语言打下了基础。国际化是使应用具有更广泛吸引力的关键,因此理解并掌握这一过程对于开发全球化应用至关重要。
以下将详细阐述实现Struts2国际化自动切换语言的过程。 1. **资源配置文件**: - `globalMessage.properties`:这是默认的资源配置文件,存放通用的国际化信息。 - `globalMessage_zh_CN.properties`:中文资源...
【标题】"jsp+mysql+struts实现的一个财务管理系统"涉及了三个主要技术:Struts、MySQL和JSP,这些都是Web开发中常见的组件。本文将详细介绍这三个技术在财务管理系统中的应用及其相互配合。 **1. Struts框架** ...
hibernate+struts实现jsp增删改查分页! hibernate实现对数据库的操作,struts实现对表单的操作! 实现了分页功能! (注:本本项目中文会出现乱码,我还没有解决!附有数据库文件!)
在这个"Struts2国际化多语言支持源码"中,我们可以深入理解如何在Struts2应用中实现多语言支持,这对于创建面向全球用户的Web应用至关重要。 国际化(i18n,18代表字母n到i之间的字母数量)是指使软件能够在不同...
9. **国际化与本地化**:网上银行服务可能需要支持多种语言,Struts支持国际化和本地化,允许开发者轻松地为不同地区提供多语言版本的应用。 10. **安全性**:由于涉及财务信息,网上银行系统必须具备高度的安全性...
7. **国际化(Internationalization, i18n)**:Struts支持多语言环境,通过资源文件(properties)可以实现界面文本的国际化。在新闻系统中,我们可以为不同的语言提供相应的翻译,提升用户体验。 8. **异常处理**...
在本项目“Struts实现简单的BBS”中,我们将深入探讨如何利用Struts框架来创建一个基本的论坛系统。 首先,让我们了解Struts框架的核心概念: 1. **Action类**:在Struts中,Action类是业务逻辑的主要载体。它接收...