Struts1.x系列教程(13):国际化.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Struts1.x 系列教程( 13):国际化 对于一个面向全球的 Web 应用程序, 按着不同国家的要 求显示相关信息(称为国际化)显得尤为重要。国际化的工 作非常复杂和繁琐。 因为要翻译很多 Web 界面,信息格式等。 然而, Struts 为我们提供了完成国际化工作的更容易的方式。 在本文将介绍如何使用 Struts 来简化国际化的工作。 、处理客户端界面的编码问题由于 、处理客户端界面的编码问题 由于 Web 浏览器可以使 用不同的编码格式来解析客户端代码,这主要取决于用户的 默认设置或偏好。由于存在这种情况,因此,在服务端向客 户端发送数据时,就必须使用和客户端一致的编码格式。 通常的做法是使用 Internet 上比较常用的 UTF-8 编码, 这主要是因为 UTF-8 编码格式所描述的字符包括了世界上 所有以知国家和地区的语言编码。这样服务端就不用根据客 户端的编码格式不断地调整服务端响应信息的编码格式了。 对于JSP页面来说,可以使用page指定来设置响应信息的编 码格式,如下面代码所示: lt;%@ page contentType=text/html; charset=UTF-8 %gt; 当然,如果我们在 Web 程序中使用了 Struts 框架,还可 以在 struts-config.xml 文件中使用如下的代码来设置编码格 式: lt;controller contentType=text/html; charset=UTF-8 /gt; #160; 如果使用上面的设置,所有通过 .do或lt;forwardgt; 元素访问的页面都会继承这一编码设置。但是如果单独访问 JSP页面,就会绕过Struts的这个设置。 对于静态页面 (如 HTML )来说, 需要使用 lt;metagt; 元素来设置编码格式,如下面代码所示: lt;headgt; lt;meta http-equiv=content-type content=text/html; charset=UTF-8gt; lt;/headgt; 除了使用通用的 UTF-8 编码格式外, 也可以从 HTTP 请 求头字段 Accept- Charset 中获得客户端的编码格式。然后根 据这个编码格式来设置响应信息的编码格式。然而,虽然根 据 HTML4.0 规范, Web 浏览器可以设置 Accept-Charset 字 段,但是有很多浏览器可以会忽略这一字段,因此,只使用 这个字段来确定 Web 浏览器所使用的编码格式是不可靠的。 所以最好的国际化编码格式解决方案仍然是UTF-8 所以最好的国际化编码格式解决方案仍然是 UTF-8 。 、本地化属性文件 本地化最重要的部分就是根据用户所处的语言环境来 显示响应语言的界面,如用户在英文操作系统下,就会显示 英文界面,如果在中文操作系统下,就会显示中文界面。最 理想的情况是这种显示效果的切换是完全透明的。 在 Struts 中提供了这种技术,使我们可以更容易地实现 透明地界面切换。在 Struts Bean 标签库中有一个 lt;bean:messagegt; 标签,它可以根据客户端浏览器所处的 语言环境自动选择相应的属性文件来读取界面显示信息。为 了演示如何使用 lt;bean:messagegt; 以及不同的属性文件 来实现国际化的程序。让我们先来看一个例子。 在本例中,选用了三个国家的语言环境(中文、英文和 法文)来演示国际化的实现。 由于读者可能不便于输入法文, 因此,法文信息仍然用中文代替,只是后面多了个 #8220; 法文) #8221; 作为标识。我们需要如下四步来完成这个 例子:第 例子: 第 1 步】建立一个默认的属性文件 在 lt;samples 工程目录 gt;\src\struts 目录中建立一个 perties 文件,内容如下: title = 这是一个国际化的 web 程序(默认值) name = 姓名(默认值) submit = 提交(默认值) perties 文件是默认的属性文件,如果客户 端浏览器所处的语言环境在服务端未找到相应的属性文件, lt;bean:messagegt; 标签就会从 perties 文件中 读取字符串信息。 在 Eclipse 中编辑非 ISO 8859-1 编码格式的字符时,应 使用在《属性(资源)文件乱码问题的解决之道》介绍的两 个 Eclipse 插件, 或使用 native2ascii.exe 命令进行转换。 否则 在显示属性文件中的信息时会出现乱码。 第 2 步】在 struts-config.xml 文件中配置属性文件 在 Struts 中所有的属性文件都必须在 struts-config.xml 文件 配置。否则 lt;b

文档评论(0)

zhaohuifei + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档