更新时间:2023年02月27日10时07分 来源:传智教育 浏览次数:
国际化(internationalization,简称il8n,意思是internationalization的首末字符i和n之间有18个字符)与本地化(localization,简称110n,意思是localization的首末字符1和n之间有10个字符)是指让产品(例如出版物、软件、硬件等)可以来适应非本地的环境,尤其是别的文化与语言。详细来说,也就是要求在不修改内部代码的前提条件之下让程序可以根据不同的语言以及地区显示相对应的界面。国际化资源文件是指用不同国家的语言描述相同的信息,并放在各自对应的.properties属性文件中,程序根据运行时的环境来决定应该加载哪个文件。
Struts提供了对国家化的支持。使用国际化功能是比较简单的,首要做的是先准备各语言的资源文件,在资源文件中定义对应的字符串和键,然后在显示的地方指定键就可以了。例如,在实现国际化时需要在JSP文件中加入Struts的bean标记库:
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%>
代码如下列所示:
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%> <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="bean"%> <%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="bean"%> <head> <title>welcome</title> </head> <body> <h2> <bean:message key="page.wel"/> </h2> </body> </html.html>
然后需要创建一个资源文件ApplicationResource.properties,文件中的内容如下:
page.wel=Welcom
如果想把英文显示转换为中文,那么需要先创建一个临时的中文资源文件ApplicationResource_temp.properties,例如,page.wel=欢迎,接着对临时中文资源文件进行编码转换。可以使用myeclipse的插件,也可以在命令模式下执行如下命令:
native2ascii-encoding gb2312 ApplicationResource.properties ApplicationResource_zh_CN.properties
最后,把资源文件ApplicationResource_zh_CN.properties添加到相应的struts-config.xml配置文件中即可。