主页  范文大全   设计学院   SEO研究   免费资源   网赚大全  QQ资源区    电影下载  在线电影   短信&笑话   校内网   理财知识   站长Blog   访客留言   顶级QQ百科

         声明:本站所有资料素材均是由站长精心整理搜集的,属于原创。我们同意您的转载和复制,但是在转载复制时请保留文字出处。本站资料全部免费使用,无需注册,力求打造华北最强最大的免费资源网站。

  一.JSP页面部分

  1. 页面文字处理

  1.1概述

  由于STRUTS提供了很好的国际化的支持因此JSP页面可以STRUTS这一特性做到国际化

  STRUTS允许将不同语言的文字写在多个资源文件中,每个资源对应一种语言,而在JSP页面上则通过STRUTS标签< bean:message>来显示文字该标签可以根据浏览器的当前语言设置确定从对应语种资源文件中取出字符串显示在页面上

  1.2资源文件

  实现国际化,首先需要准备好资源文件需要支持语言各对应一个资源文件一定要用支持多国语言文字文本编辑器(如WORD,一定不能用NOTEPAD、UE等)编写其格式如下:

  # Project international

  index.title=XX信息系统

  index.copyright=XXX有限公司 版权所有

  其中以#开头的行是注释,其它的行都是KEY=VALUE的形式定义了一个KEY对应当前语言下文字保存资源文件时,需要在文件类型选项中选择纯文本类型,编码选择其它>>UTF-8注意资源文件扩展名为.properties文件名可以任意取

  这样保存的资源文件还不能直接被STRUTS使用JDK提供了一个工具native2ascii对编写资源文件进行转换,该工具位于%JDK%/bin/目录下一般在JDK正确安装后可以直接在命令行使用使用native2ascii工具转换的资源的文件命令行格式如下:

  native2ascii -encoding UTF-8 ApplicationResources.properties ApplicationResources_zh_CN.properties

  其中-encoding参数指明编写的资源文件的编码格式,这里必须与编辑时选择保存的编码格式一致后面两个参数分别是需要转换的资源文件名和转换后保存资源文件名

  转换后的资源文件名都必须以一个特定的前辍开头,该前辍写在struts-config.xml配置中后辍是对应语言简称

  英文(美国) ApplicationResources _en_US.properties

  中文(简体)ApplicationResources _zh_CN.properties

  中文(繁体)ApplicationResources _tw.properties

  泰语 ApplicationResources _th.properties

  资源文件的存放目录可以是/WEB-INF/classes/下的任意目录,为了便于管理 ,建议在/WEB-INF/ classes/下建立目录resources将所有资源文件都放在该目录下STRUTS通过配置文件struts-config.xml配置资源文件所在位置如:

  < message-resources parameter="resources.ApplicationResources" />

  其中目录以包方式表示

  1.3 JSP页面显示

  为了支持国际化,JSP页面的编码方式需要设成UTF-8即在页面头部加入以下几行:

  < %@ page contentType="text/html; charset=UTF-8" %>

  < %@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>

  ……(STRUTS及其它标签库引用)

  < html:html locale="true">

  JSP页面中文字要全部写到资源文件中,注意每种语言资源文件都要写到否则在使用某种语言访问系统时可能会报错JSP中使用STRUTS标签< bean:message key="index.title"/>显示资源文件中定义字符串这样当改变浏览器的当前语言后页面会自动取得与浏览器当前语言对应的资源文件中字符串显示在页面上

  对于在ACTION的JAVA代码中直接设置的变量,如需要在JSP页面上进行显示,那么在设置变量时也需要从资源文件中通过KEY取到当前语言的字符串,再使用request.setAttribute方法进行设置这样在JSP页面上使用< bean:write>标签展现设置的变量才会对应不同的语言会呈现不同字符串

  在JAVA代码中取资源文件的信息的方法是,首先通过Globals.MESSAGES_KEY从request或session变量中取得资源对象(MessageResources),再调用MessageResources.getMessage方法即可取得相应的字符串该方法需的两个参数是当前语言区域设置(Locale)和字符串KEY,其中当前语言区域设置(Locale)保存在SESSION变量中,其变量名为Globals.LOCALE_KEY该变量在下一节手工设置语言时也有提到

教程录入:xxYsh.com    责任编辑:admin 
发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口

推荐链接