国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

java框架篇---Struts2 本地化/國(guó)際化(i18n)

2019-11-14 23:27:46
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
java框架篇---Struts2 本地化/國(guó)際化(i18n)

國(guó)際化(i18n)是規(guī)劃和實(shí)施的產(chǎn)品和服務(wù),使他們能很容易地適應(yīng)特定的本地語(yǔ)言和文化的過(guò)程中,這個(gè)過(guò)程被稱(chēng)為本地化。國(guó)際化的過(guò)程有時(shí)也被稱(chēng)為翻譯或本地化啟用。國(guó)際化是縮寫(xiě)i18n,因?yàn)槲液蛢啥擞胣字打頭,并有18個(gè)字符之間的第i個(gè)和最后n。

訪問(wèn)方式:

有幾種方法可以訪問(wèn)的信息資源,包括gettext的,文本標(biāo)簽,UI標(biāo)簽的關(guān)鍵屬性,國(guó)際化標(biāo)簽。讓我們來(lái)看看他們簡(jiǎn)單:

要顯示i18n的文本,使用的調(diào)用屬性標(biāo)記gettext,或其他任何標(biāo)記,例如UI標(biāo)簽如下:

<s:PRoperty value="getText('some.key')" />

文本標(biāo)記檢索從默認(rèn)的資源包,即一個(gè)消息 struts.properties

<s:text name="some.key" />

i18n標(biāo)簽推值棧上的任意資源束。 i18n標(biāo)簽范圍內(nèi)的其他標(biāo)簽可以顯示該資源包的消息:

<s:i18n name="some.package.bundle">     <s:text name="some.key" /></s:i18n>

大多數(shù)UI標(biāo)簽的鍵屬性,可以用來(lái)檢索的消息,從一個(gè)資源包:

<s:textfield key="some.key" name="textfieldName"/>

下面實(shí)現(xiàn)國(guó)際化處理

結(jié)構(gòu)目錄:

配置文件Struts.xml

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC   "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"   "http://struts.apache.org/dtds/struts-2.0.dtd"><struts>   <constant name="struts.devMode" value="true" />   <!-- 掃描資源目錄下以global開(kāi)頭的文件 -->   <constant name="struts.custom.i18n.resources" value="global" />   <package name="helloworld" extends="struts-default" namespace="/">      <action name="empinfo"          class="com.oumyye.action.Employee"         method="execute">         <result name="input">/index.jsp</result>         <result name="success">/success.jsp</result>      </action>            <action name="locale"          class="com.oumyye.action.Locale"         method="execute">         <result name="success">/index.jsp</result>      </action>   </package></struts>

處理類(lèi) Employee .java

package com.oumyye.action;import com.opensymphony.xwork2.ActionSupport;public class Employee extends ActionSupport{   private String name;   private int age;      public String execute()    {       return SUCCESS;   }      public String getName() {       return name;   }   public void setName(String name) {       this.name = name;   }   public int getAge() {       return age;   }   public void setAge(int age) {       this.age = age;   }}

處理類(lèi)Locale.java

package com.oumyye.action;import com.opensymphony.xwork2.ActionSupport;public class Locale extends ActionSupport{   public String execute()    {       return SUCCESS;   }}

視圖index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"   pageEncoding="UTF-8"%><%@ taglib prefix="s" uri="/struts-tags"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Employee Form with Multilingual Support</title></head><body>  <h1><s:text name="global.heading"/></h1>   <s:url id="indexUS" namespace="/" action="locale" >        <s:param name="request_locale" >us</s:param>   </s:url>   <s:url id="indexZH" namespace="/" action="locale" >      <s:param name="request_locale" >zh</s:param>   </s:url>   <s:url id="indexFR" namespace="/" action="locale" >      <s:param name="request_locale" >fr</s:param>   </s:url>   <s:a href="%{indexUS}" >English</s:a>   <s:a href="%{indexZH}" >中文</s:a>   <s:a href="%{indexFR}" >France</s:a>   <s:form action="empinfo" method="post" namespace="/">      <s:textfield name="name" key="global.name" size="20" />      <s:textfield name="age" key="global.age" size="20" />      <s:submit name="submit" key="global.submit" />   </s:form></body></html>

跳轉(zhuǎn)成功頁(yè)Success.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"   pageEncoding="UTF-8"%><%@ taglib prefix="s" uri="/struts-tags"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title>Success</title></head><body>   <s:property value="getText('global.success')" /></body></html>

global_fr.properties

global.name = Nom d'utilisateur global.age = l'âgeglobal.submit = Soumettre desglobal.heading = Sé lectionnez Localglobal.success =Authentifi/t/u00E9  avec succ/u00E8s

global_us.properties

global.name = Nameglobal.age = Ageglobal.submit = Submitglobal.heading = Select Localeglobal.success =Successfully authenticated

global_zh.properties

global.name = /u59D3/u540Dglobal.age = /u5E74/u9F84global.submit = /u63D0/u4EA4global.heading = /u9009/u62E9/u4E00/u79CD/u8BED/u8A00global.success =/u6210/u529F

效果界面

注意訪問(wèn)時(shí)的url地址。。

借鑒于:http://www.yiibai.com/struts_2/struts_localization.html


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乌拉特前旗| 斗六市| 喀喇| 镇赉县| 郁南县| 绥宁县| 曲阳县| 普安县| 安新县| 墨脱县| 建昌县| 顺昌县| 灵山县| 吉安市| 白山市| 洞头县| 浮山县| 宜春市| 罗城| 渝北区| 郑州市| 长岭县| 弋阳县| 临武县| 化州市| 曲阳县| 邮箱| 巴林右旗| 大丰市| 胶州市| 武川县| 延寿县| 滨海县| 汉阴县| 镶黄旗| 崇仁县| 沂水县| 普安县| 大竹县| 天祝| 木里|