love fish大鵬一曰同風起,扶搖直上九萬里

          常用鏈接

          統計

          積分與排名

          friends

          link

          最新評論

          struts多國語言國際化處理(現以中文英文切換為例) (轉)

          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" %>

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html:html locale="true">
          ? <head>
          ??? <html:base />
          ???
          ??? <title><bean:message key="username"/></title>

          ?<meta http-equiv="pragma" content="no-cache">
          ?<meta http-equiv="cache-control" content="no-cache">
          ?<meta http-equiv="expires" content="0">???
          ?<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
          ?<meta http-equiv="description" content="This is my page">
          ?<!--
          ?<link rel="stylesheet" type="text/css" href="styles.css">
          ?-->

          ? </head>
          ?
          ? <body>
          ??? <html:link page="/changeLanguage.do?lan=0">English</html:link>
          ??? <html:link page="/changeLanguage.do?lan=1">Chinese</html:link>
          ??? <bean:message key="username"/>
          ? </body>
          </html:html>
          4)配置文件(struts-config.xml)
          <?xml version="1.0" encoding="UTF-8"?>
          <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.1//EN" "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

          <struts-config>
          ? <data-sources />
          ? <form-beans />
          ? <global-exceptions />
          ? <global-forwards >
          ??? <forward name="index" path="/index.jsp" />

          ? </global-forwards>

          ? <action-mappings >
          ??? <action path="/changeLanguage" type="com.lan.struts.action.ChangeLanguageAction" />

          ? </action-mappings><message-resources parameter="com.lan.struts.ApplicationResources" />
          </struts-config>

          5)結果
          ?1。默認
          http://localhost:8080/lan/
          EnglishChinese 純冰
          2。英文
          http://localhost:8080/lan/changeLanguage.do?lan=0
          EnglishChinese chunkyo
          3。中文
          http://localhost:8080/lan/changeLanguage.do?lan=1
          EnglishChinese 純冰
          6)結論
          用struts做國際化處理 多國語言處理很方便 呵呵!

          posted on 2007-03-23 09:39 liaojiyong 閱讀(2597) 評論(2)  編輯  收藏 所屬分類: Struts

          評論

          # re: struts多國語言國際化處理(現以中文英文切換為例) (轉) 2007-12-20 14:35 jiangyang_001631@163.com

          請問:如果我想在其它頁面也實現中英文切換連接,選擇后返回到當前請求的頁面,而不是你實現的固定的“index.jsp”頁面,這樣的效果如何來實現?   回復  更多評論   

          # re: struts多國語言國際化處理(現以中文英文切換為例) (轉) 2008-06-11 13:42 na

          Abstract: This paper characterises the dynamics of advertising investment in a spatial monopoly, contrasting the socially optimal behaviour of a benevolent planner against that of a profit-seeking monopolist. In steady state, the monopolist always distorts both output and advertising decisions as compared to the social optimum, except in a situation where, under both monopoly and social planning, the equilibrium entails full market coverage. © 2004 Elsevier B.V. All rights reserved. (27 refs.)
            回復  更多評論   

          主站蜘蛛池模板: 微山县| 红原县| 清苑县| 清新县| 昆明市| 安西县| 同江市| 岚皋县| 泰来县| 水富县| 灌南县| 获嘉县| 噶尔县| 承德市| 霍州市| 婺源县| 平和县| 临澧县| 方城县| 望奎县| 庆安县| 外汇| 昆明市| 中方县| 锡林郭勒盟| 梁平县| 新兴县| 天峨县| 谷城县| 伊金霍洛旗| 绍兴市| 米泉市| 新丰县| 洪泽县| 松潘县| 宁河县| 周宁县| 惠东县| 达孜县| 海淀区| 三河市|