应用程序本地化(中文显示)

1: 控制响应结果动态页面中中文信息的正确显示

<%@ page contentType="text/html;charset=ISO8859_1" %>

2: 控制接受的用户请求数据的正确中文编码

<%request.setCharacterEncoding("ISO8859_1");%>

3:控制XML文件中中文信息的正确显示

<?xml version="1.0" encoding="ISO8859_1">

在Struts框架中进行应用程序的国际化,最重要的工作就是准备ResourceBundle资源包。在每个资源包中存放针对不同区域的用户所涉及的文本及图片。

1 对文本的国际化

在JSP页面中不再直接输出包含本地化的信息,而是通过<bean:message>标记从资源包中分别获取不同区域的文本。例如:

英文界面资源包中为:title.login=Login Page

中文界面资源包中为:title.login=登录界面

2 对按钮的国际化

为了使按钮的标签可以支持多种语言,在JSP页面中利用下面的代码来表示提交。

<html:submit>

   <bean:message key="item.submit">

</html:submit>

然后从资源包中获取标签信息

英文资源包:item.submit=submit

中文资源包:item.submit=登录

3 对图片的国际化

为使页面在不同的语言环境中显示不同的图片,在JSP页面中利用下面的代码来表示图片。

<html:imag pageKay="title.imagEnter" altKey="title.imagEnterHint">

然后读取资源包

英文为:title.imagEnter=/enterE.gif

title.imagEnterHint=Classmate

中文为:title.imagEnter=/enter.gif

title.imagEnterHint=同学录

属性文件中包含的是“键-值”对形式的字符串信息。属性文件在应用程序启动时被载入内存,并根据客户端请求所携带的语言信息进行匹配和使用。这些信息以java.util.Locale类型属性的方式被封装在request对象中,感兴趣的读者可以通过HttpServletRequest类的getLocale()方法获取相应的Locale对象,再进而调用Locale对象的getLanguage()方法获取具体的语言种类信息。

在原Web应用程序中使用属性文件的修改步骤;

1 创建所需的资源包,以.properties后缀

2 将属性文件保存到Web应用的classes文件夹下

3 部署标签库,即在web.xml中添加taglib子元素

4 在部署文件web.xml中加入<load-on-startup>元素,以确保系统启动时(在接受客户请求之前)就载入所需的属性信息

5 修改原Struts配置文件struts-config.xml,添加一个<message-resources/>元素,用于指明所要用到的资源包。

<message-resources parameter="myproject.myresource">

6 定义、修改JSP文件,在文件开头引入.tld 用户标签库,并使用<bean:message>标记获取属性文件信息,以替换文件中所有直接给出的响应字符串

7 使用不同操作系统测试Web应用程序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值