导读:
1.引言
因为最近有个英国的项目要求中英文切换,又由于我们开发是用struts+hibernate的,所以我们就把原先做两个版本的构思抛掉,就用struts的国际化处理方案。
2.资料
首先,我们要准备两份配置文件中文和英文的
中文:ApplicationResources_zh_CN.properties
英文:ApplicationResources_en.properties? (千万不要用默认的ApplicationResources.properties myeclipse自动生成,可能会不成功,我起先就是因为这个怎么都不行的,呵呵!)
3.准备开始
1)?ApplicationResources_zh_CN.properties的内容
#zh_CN
username=纯冰
2)ApplicationResources_en.properties的内容
#en
username=chunkyo
3)一个action
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.lan.struts.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.Globals;
import java.util.Locale;
/**
* MyEclipse Struts
* Creation date: 02-07-2007
*
* XDoclet definition:
* @struts.action validate="true"
*/
public class ChangeLanguageAction extends Action {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String lan=request.getParameter("lan");
if(lan.equals("1"))
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
}
else if(lan.equals("0"))
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.ENGLISH);
}
else
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
}
return mapping.findForward("index");
}
}
4)一个页面
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
<bean:message key="username"/>
English
Chinese
4)配置文件(struts-config.xml)
本文转自
http://www.blogjava.net/liaojiyong/archive/2007/12/20/105717.html
1.引言
因为最近有个英国的项目要求中英文切换,又由于我们开发是用struts+hibernate的,所以我们就把原先做两个版本的构思抛掉,就用struts的国际化处理方案。
2.资料
首先,我们要准备两份配置文件中文和英文的
中文:ApplicationResources_zh_CN.properties
英文:ApplicationResources_en.properties? (千万不要用默认的ApplicationResources.properties myeclipse自动生成,可能会不成功,我起先就是因为这个怎么都不行的,呵呵!)
3.准备开始
1)?ApplicationResources_zh_CN.properties的内容
#zh_CN
username=纯冰
2)ApplicationResources_en.properties的内容
#en
username=chunkyo
3)一个action
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.lan.struts.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.Globals;
import java.util.Locale;
/**
* MyEclipse Struts
* Creation date: 02-07-2007
*
* XDoclet definition:
* @struts.action validate="true"
*/
public class ChangeLanguageAction extends Action {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
// TODO Auto-generated method stub
String lan=request.getParameter("lan");
if(lan.equals("1"))
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
}
else if(lan.equals("0"))
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.ENGLISH);
}
else
{
request.getSession().setAttribute(Globals.LOCALE_KEY,Locale.CHINA);
}
return mapping.findForward("index");
}
}
4)一个页面
<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-bean" prefix="bean" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html" %>
<%@ taglib uri="http://jakarta.apache.org/struts/tags-logic" prefix="logic" %>
English
Chinese
4)配置文件(struts-config.xml)
本文转自
http://www.blogjava.net/liaojiyong/archive/2007/12/20/105717.html