國際化(i18n)是規劃和實施的產品和服務,使他們能很容易地適應特定的本地語言和文化的過程當中,這個過程被稱爲本地化。國際化的過程有時也被稱爲翻譯或本地化啓用。國際化是縮寫i18n,由於我和兩端用n字打頭,並有18個字符之間的第i個和最後n。java
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
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.刷新瀏覽器,發現變成英文
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,如今能夠實現中英文的切換。