<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    從制造到創造
    軟件工程師成長之路
    posts - 292,  comments - 96,  trackbacks - 0
    效果:


    文件清單:
    序號 文件名
    1 ChangeLocaleAction.java
    2 ChangeLocaleForm.java
    3 struts-config.xml
    4 index.jsp
    5 application_en_US.properties
    6 application_zh_CN.properties
    7 application_zh_TW.properties

    清單1:
    package com.coderdream.struts.action;

    import java.util.Locale;

    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;

    import org.apache.struts.Globals;
    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 com.coderdream.struts.form.ChangeLocaleForm;

    public class ChangeLocaleAction extends Action {

        
    public ActionForward execute(ActionMapping mapping, ActionForm form,
                HttpServletRequest request, HttpServletResponse response) {
            ChangeLocaleForm clForm 
    = (ChangeLocaleForm)form;
            String language 
    = clForm.getLanguage();
            
    if (language != null) {
                Locale locale;
                
    if (language.equalsIgnoreCase("en")) {
                    locale 
    = Locale.US;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                } 
    else if (language.equalsIgnoreCase("tw")) {
                    locale 
    = Locale.TAIWAN;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                } 
    else {
                    locale 
    = Locale.CHINA;
                    request.getSession().setAttribute(
                            Globals.LOCALE_KEY, locale);
                }
            }
            
            
    return mapping.findForward("success");
        }
             
    }

    清單2:
    package com.coderdream.struts.form;

    import org.apache.struts.action.ActionForm;


    /**
     * 
     * description:
     * 
     * 
    @author 
     *
     
    */
    public class ChangeLocaleForm extends ActionForm{
        
        
    public ChangeLocaleForm() {
            
    super();
        }

        
    private String language;

        
    public String getLanguage() {
            
    return language;
        }

        
    public void setLanguage(String language) {
            
    this.language = language;
        }
    }

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

    <struts-config>
        
    <data-sources />
        
    <form-beans>
            
    <form-bean name="ChangeLocaleForm"
                type
    ="com.coderdream.struts.form.ChangeLocaleForm" />
        
    </form-beans>

        
    <action-mappings>

            
    <action name="ChangeLocaleForm" path="/ChangeLocale"
                scope
    ="request"
                type
    ="com.coderdream.struts.action.ChangeLocaleAction"
                validate
    ="false">
                
    <forward name="success" path="/index.jsp" />
            
    </action>
        
    </action-mappings>

        
    <message-resources key="application"
            parameter
    ="com.coderdream.struts.resources.application" />
    </struts-config>

    清單4:
    <%@ page contentType="text/html; charset=UTF-8"%>
    <%@page import="org.apache.struts.Globals"%>
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
    <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic"%>

    <html: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">
        
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        
    <meta http-equiv="description" content="This is my page">
    </head>
    <script language="javascript"> 
        function onLanguage(){
            var language 
    = document.getElementsByName("language")[0].value;
            
    if(language!=null&&language!=""){         
              document.forms[
    0].submit();
                }
              }   
        
    </script>

    <body>
        
    <html:form action="ChangeLocale.do">
            
    <html:select property="language" styleId="height:18"
                onchange
    ="onLanguage();">
                
    <option value="" title="">
                    
    --
                    
    <bean:message bundle="application" key="global.select.language" />
                    
    --
                
    </option>
                
    <option value="en" title="English">
                    English
                
    </option>
                
    <option value="cn" title="簡體中文">
                    簡體中文
                
    </option>
                
    <option value="tw" title="繁體中文">
                    繁體中文
                
    </option>
            
    </html:select>
        
    </html:form>
        
    <br>
        
    <br>
        
    <br>
        
    <bean:message bundle="application" key="global.select.test" />
        
    <%=request.getSession().getAttribute(Globals.LOCALE_KEY)%>

    </body>
    </html:html>

    清單5:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)

    global.select.language 
    = Language
    global.select.test     
    = Test

    清單6:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)
    #BizException

    global.select.language = \u8BED\u8A00
    global.select.test     = \u6D4B\u8BD5

    清單7:
    #Generated by ResourceBundle Editor (http://eclipse-rbe.sourceforge.net)

    global.select.language = \u8A9E\u8A00
    global.select.test     = \u6E2C\u8A66

    此功能的關鍵是在Action里面將頁面傳過來的language信息得到,然后根據信息設置Locale,然后將新的Locale放到Session中。

    源代碼:點擊下載
    posted on 2008-05-14 18:20 CoderDream 閱讀(1017) 評論(0)  編輯  收藏 所屬分類: 經驗點滴

    <2008年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(9)

    我參與的團隊

    隨筆分類(245)

    隨筆檔案(239)

    文章分類(3)

    文章檔案(3)

    收藏夾(576)

    友情鏈接

    搜索

    •  

    積分與排名

    • 積分 - 457951
    • 排名 - 114

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 欧洲人免费视频网站在线| 久久精品亚洲日本波多野结衣| 国产亚洲情侣久久精品| 妞干网免费观看视频| 亚洲H在线播放在线观看H| 91免费国产自产地址入| 中文字幕在线观看亚洲| 久久这里只精品热免费99| 亚洲视频免费在线观看| 99免费在线观看视频| 亚洲人成网站18禁止久久影院| 91久久青青草原线免费| 日韩精品亚洲人成在线观看| 国内精品一级毛片免费看| 免费A级毛片无码A| 亚洲gv白嫩小受在线观看| 亚洲色精品三区二区一区| 成人免费视频软件网站| 亚洲乱码国产乱码精华| 免费的涩涩视频在线播放 | 国产成人无码免费视频97| 亚洲国产成人久久精品影视| 羞羞视频免费网站在线看| 曰韩亚洲av人人夜夜澡人人爽 | 亚洲卡一卡2卡三卡4麻豆| 国产92成人精品视频免费| 亚洲男女性高爱潮网站| 18级成人毛片免费观看| 亚洲成A∨人片在线观看无码| 黄网站色在线视频免费观看| 亚洲色大成网站www永久| 黄在线观看www免费看| 亚洲综合色丁香婷婷六月图片 | 亚洲毛片免费观看| 亚洲人成综合在线播放 | 男女午夜24式免费视频| 亚洲精品A在线观看| 黄色一级视频免费观看| 国产一区视频在线免费观看 | 97国免费在线视频| 久久久久亚洲AV成人无码网站|