单元7:国际化.ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单元7:国际化

国际化 软件技术专业 范新灿 本章脉络 国际化 国际化(i18n):程序在不做任何修改的情况下,就可以在不同的国家或地区和不同的语言环境下,按照当地的语言和格式习惯显示字符。 包括两方面的内容:语言和格式化。 国际化要求项目视图能够根据客户端请求所来自的国家/地区、语言的不同,在应用程序运行时,自适应显示对应的用户界面, 国际化编程 一个国际化的程序,当它运行在本地机器中时,需要根据本地机器的语言和地区设置显示相应的字符,这个过程就叫做本地化(Localization),通常简称为L10N。 在Java中编写国际化程序主要通过两个类来完成: ① java.util.Locale类。 ② java.util.ResourceBundle抽象类。 Locale类用于提供本地信息,通常称它为语言环境。不同的语言、不同的国家和地区采用不同的Locale对象来表示。 ResourceBundle类称为资源包,包含了特定于语言环境的资源对象。 Locale类 Java的Locale类定义了一个区域,该区域定义了一种主流语言和一组规则。 Locale包含3个属性:语言代码、国家代码及标志。 Java.util.Locale类的常用构造方法如下。 ① public Locale(String language):根据语言代码构造一个语言环境。 ② public Locale(String language,String country):根据语言和国家构造一个语言环境。 ResourceBundle类 对于不同的Locale,应该有不同的字符串与之对应,这就需要用一个源文件来存取这些字符串,Java的抽象类java.util.ResourceBundle类提供了这一功能。 ResourceBundle类的主要作用是读取属性文件, 例子:通过ResourceBundle取得资源文件中的内容。 资源包属性文件 将要显示的字符内容从程序中分离,然后统一存储到一个资源包中,当显示时,从资源包中取出和Locale对象相一致的字符内容。 Struts 2的所有国际化功能是通过ResourceBundle.getBundle()方法实现,在方法被调用的时候,它首先会查找包含语言和国家后缀的类。 通常的做法是把字符串信息放在属性文件中,而不是放在类文件中 例如,当要装载一个名称为Message的资源包的时候,Struts 2将会查找下面一系列的属性文件。 Struts 2加载资源文件 1.全局资源文件 在src目录下新建perties文件,该文件指定了国际化全局资源文件。 struts.custom.i18n.resources是全居国际化的常量名 messageResource是属性文件名 2.包范围资源文件 在包的根目录下建立名为“package_language _country.properties”的文件 在此包中所有的Action都可以获取资源文件,获取的方式同普通的一样。 Struts 2加载资源文件 3.Action范围资源文件 在Action类文件所在的路径下建立文件名为ActionName_language_country.properties的文件。 4.临时范围资源文件 在某个路径下建立文件名为Name_language_country.properties的文件。 Struts 2的页面有一个标签s:i18n,可以通过它来指定资源文件的位置。 查找资源包的文件优先级 用户登录程序的国际化显示 项目实现——资源文件 messageResource_en_US.properties messageResource_zh_CN. properties JSP文件关键代码 index.jsp文件用于页面导航的跳转: head %String contextPath = request.getContextPath();% meta http-equiv=Content-Type content=text/html; charset=gb2312 meta http-equiv=refresh content=0; URL=%=contextPath%/index.action /head Struts 2国际化信息的获取 资源包提供了信息字符串,Struts 2中使用s:text标签和getText()方法来获取信息字符串。 (1)s:text标签:只要求指定一个name属性,即要查找字符串的key。 例如,s:text name=tutorial.login/将在资源文件中查找对应键名为tutoria

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档