JAVA基础 J2EE J2SE J2MEJAVA技巧 JAVA其它
返回首页

struts2中页面表示国际化的方法

时间:2009-06-15来源: 作者: 点击:
在struts2中,前端页面表示国际化的实现更加简单。简单的应用struts2提供的支持国际化的表达式即可快速方便的进行页面的国际化的实现。如何做呢?本文以英文和中文为例进行说明。

在struts2中,前端页面表示国际化的实现更加简单。简单的应用struts2提供的支持国际化的表达式即可快速方便的进行页面的国际化的实现。如何做呢?本文以英文和中文为例进行说明。

    1,自定义struts2的属性,

    属性项目:struts.custom.i18n.resources

    首先生成一个struts.properties文件,

    文件位置:WEB-INF/src目录下

    文件内容:

    struts.custom.i18n.resources=globalMessages

    2,根据属性所指定的值生成两个properties文件

    文件名:globalMessages_en.properties

    文件内容:

    firstname=firstname

    lastname=lastname

    age=age


    文件名:globalMessages_zh.properties

    文件内容:

    firstname=姓

    lastname=名

    age=年龄

    对于,globalMessages_zh.properties,应该将其中的文件内容转化成unicode的形式。

    转换方法如下:

    %JAVA_HOME%\bin\native2ascii.exe globalMessages_zh.properties > globalMessages_zh.properties

    转换完成后的文件内容应该如下:

    文件名:globalMessages_zh.properties

    文件内容:

    firstname=\u59d3

    lastname=\u540d

    age=\u5e74\u9f84

    3,然后做成一个测试用的jsp页面。

    文件名:login.jsp

    文件内容:


    <%@ page contentType="text/html; charset=gb2312" %>
    <%@ taglib uri="/struts-tags" prefix="s"%>
    <html>
    <s:form action="login" method="post">
    <s:textfield name="firstname" label="%{getText('firstname')}"/>
    <s:textfield name="lastname" label="%{getText('lastname')}"/>
    <s:textfield name="age" label="%{getText('age')}"/>
    <s:submit/>
    </s:form>
    </html>


    请注意:其中的红字的部分,则是进行国际化资源获取的重要代码。

    4,struts.xml的配置部分。

    自己写一个login的action吧,内容空的就可以,在此主要是测试页面表示的jsp页面内容的国际化表示。

    好,一切玩成,我们执行以下,

    打开IE,如图,确认一下当前的IE选项中的语言的首选项是中文,页面的表示则为中文。

struts2中页面表示国际化的方法(图一)

struts2中页面表示国际化的方法(图二)



然后,修改IE选项中的语言的首选项成为英文,再刷新一下页面,则页面的表示变成英文。

struts2中页面表示国际化的方法(图三)

struts2中页面表示国际化的方法(图四)



怎么样,在struts2中,国际化的实现就是如此的简单。

顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名:密码: 验证码:点击我更换图片
推荐内容