Struts2 國際化

1、簡介

國際化(i18n)是規劃和實施的產品和服務,使他們能很容易地適應特定的本地語言和文化的過程當中,這個過程被稱爲本地化。國際化的過程有時也被稱爲翻譯或本地化啓用。國際化是縮寫i18n,由於我和兩端用n字打頭,並有18個字符之間的第i個和最後n。java

2、eclipse搭建Struts

 1.新建一個「動態java項目」web

2.將Struts2所須要的jar包導入到工程目錄「webcontent—>web-inf」下的「lib」文件夾,系統會自用的添加到構建目錄。apache

3.配置web.xml文件瀏覽器

    <!-- strut2的配置 -->
    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>struts2</filter-name>
          <!-- 這裏使用/* -->
        <url-pattern>/*</url-pattern>
    </filter-mapping>

4.新建包和類用於測試。tomcat

public class UserAction {

    public String login() {
        
        return "success";
    }
}

5.新建xml文件,取名爲Struts.xml,並配置packageapp

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
    <package name="USER" extends="struts-default" namespace="/">
        <action name="login" class="com.hgd.action.UserAction" method="login">
            <result name="success">/main.jsp</result>
        </action>
    </package>

</struts>    

6.新建index.jsp和main.jsp,在index.jsp中添加一個測試標籤。eclipse

<a href="login.action">login</a>

7.tomcat跑一下,看看測試結果,點擊login標籤可以跳轉到main.jsp表面Struts2的配置正確,能夠開始下一步。jsp

3、國際化

1.在src目錄下添加兩個資源文件,命名方式很重要的。格式:baseName_language_country.properties。好比,實現中英文切換咱們要添加 resource_zh_CN.properties 和 resource_en_US.properties。而後將各個key-value對添加到這兩個文件中,key字段必定要統一。測試

2.配置Struts.xml,在Struts.xml的Struts節點下添加如下代碼url

<!-- 告訴程序國際化資源文件是在i18n包下的resource開頭的文件 --> 

<constant name="struts.custom.i18n.resources" value="i18n/resource"></constant>

3.在jsp中使用

在jsp頁面頭部添加

    <%@ taglib prefix="s"  uri="/struts-tags"%>

頁面中書寫

<s:property value="getText('username')"/>:<input type="text">
<br>
<s:property value="getText('pwd')"/>:<input type="text">
<br>

或者

<s:textfield name="username" key="username"></s:textfield>
<br>
<s:textfield name="pwd" key="pwd"></s:textfield>

4.咱們這裏使用ie瀏覽器測試,當咱們打開首頁,會使用瀏覽器默認的語言顯示。

5.打開Internet選項,選擇默認語言,選擇英文-->上移,點擊肯定。

 

 6.刷新瀏覽器,發現變成英文

3、中英文切換

 1.插入以下代碼,url中的這個參數 request_locale會被 i18n 攔截器讀取,而後根據這個值設置語言環境。 i18n 攔截器是struts中default裏面自帶的攔截器。

<a href="i18n.action?request_locale=zh_CN">中文</a><br>
<a href="i18n.action?request_locale=en_US">英文</a><br>

2.配置Struts.xml,在login的action下面添加一個action。

</action>
<action name="i18n">
<result>/index.jsp</result>
</action>

3.運行tomcat,如今能夠實現中英文的切換。

相關文章
相關標籤/搜索