关于伟创 伟创新闻 伟创案例 网站套餐 联系方式
只做吸引客户的精品站!

struts中关于国际化问题的细化

洛阳软件开发 / 2013/3/6 7:41:42
[核心提示] 一个系统的国际化就是根据操作系统的语言,页面上的表现形式发生相应的变化。
struts中关于国际化问题的细化
国际化

一个系统的国际化就是根据操作系统的语言,页面上的表现形式发生相应的变化。比如如果操作系统是英文,页面的文字应该用英语,如果操作系统是中文,页面的语言应该是中文。

IE浏览器设置语言环境:

Windows系统下:

IE -->工具-->Intener选项--->语言--->设置语言首选项--->添加XX语言,就可实现添加。

   国际化过程中往往伴随以下具体内容:

一、实现国际化的准备工作

     准备资源文件,资源文件的命名格式如下:

baseName_language_country.properties

baseName_language.properties

baseName.properties

其中baseName是资源文件的基本名,我们可以自定义,但language和country必须是java支持的语言和国家。如:

中国大陆:baseName_zh_CN.properties

美国:baseName_en_US.properties

 

现在为应用添加两个资源文件:

第一个存放中文:csdn_zh_CN.properties

内容为:welcome=欢迎来到传智播客

第二个存放英语(美国): csdn_en_US.properties

内容为:welcome=welcome to csdn

 

对于中文的属性文件,我们编写好后,应该使用jdk提供的native2ascii命令把文件转换为unicode编码的文件。命令的使用方式如下:

native2ascii  源文件.properties  目标文件.properties

二、配置全局资源与输出国际化信息

    当准备好资源文件之后,我们可以在struts.xml中通过struts.custom.i18n.resources常量把资源文件定义为全局资源文件,如下:

<constantname="struts.custom.i18n.resources" value=“csdn"/>

csdn为资源文件的基本名。

后面我们就可以在页面或在action中访问国际化信息:

在JSP页面中使用<s:text name=“”/>标签输出国际化信息:

<s:text name=“user”/>,name为资源文件中的key

在Action类中,可以继承ActionSupport,使用getText()方法得到国际化信息,该方法的第一个参数用于指定资源文件中的key。

在表单标签中,通过key属性指定资源文件中的key,如:

<s:textfieldname="realname" key="user"/>

三、国际化—输出带占位符的国际化信息

   资源文件中的内容如下:

welcome= {0},欢迎来到传智播客{1}

 

在jsp页面中输出带占位符的国际化信息

<s:textname="welcome">

          <s:param><s:propertyvalue="realname"/></s:param>

    <s:param>学习</s:param>

</s:text>

在Action类中获取带占位符的国际化信息,可以使用getText(String key, String[] args)或getText(StringaTextName, List args)方法。

四、国际化—包范围资源文件

  在一个大型应用中,整个应用有大量的内容需要实现国际化,如果我们把国际化的内容都放置在全局资源属性文件中,显然会导致资源文件变的过于庞大、臃肿,不便于维护,这个时候我们可以针对不同模块,使用包范围来组织国际化文件。

 

方法如下:

在java的包下放置package_language_country.properties资源文件,package为固定写法,处于该包及子包下的action都可以访问该资源。当查找指定key的消息时,系统会先从package资源文件查找,当找不到对应的key时,才会从常量struts.custom.i18n.resources指定的资源文件中寻找。

    注意:

必须是先访问到这个action才能够使用这个包中的国际化文件。

五、国际化—Action范围资源文件

我们也可以为某个action单独指定资源文件,方法如下:

在Action类所在的路径,放置ActionClassName_language_country.properties资源文件,ActionClassName为action类的简单名称。

 

当查找指定key的消息时,系统会先从ActionClassName_language_country.properties资源文件查找,如果没有找到对应的key,然后沿着当前包往上查找基本名为package 的资源文件,一直找到最顶层包。如果还没有找到对应的key,最后会从常量struts.custom.i18n.resources指定的资源文件中寻找。

六、国际化—JSP中直接访问某个资源文件

   struts2为我们提供了<s:i18n>标签,使用<s:i18n>标签我们可以在类路径下直接从某个资源文件中获取国际化数据,而无需任何配置:

<s:i18n name=“csdn">

    <s:text name=“welcome”/>

</s:i18n>

csdn为类路径下资源文件的基本名。

如果要访问的资源文件在类路径的某个包下,可以这样访问:

<s:i18n name=“cn/csdn/action/package">

         <s:textname="welcome">

                <s:param>小张</s:param>

         </s:text>

</s:i18n>

上面访问cn.csdn.action包下基本名为package的资源文件。
以上内容来自伟创科技-洛阳软件开发板块内容。

尊重作者原创 除非特别声明,伟创科技所有均为伟创原创报道,转载请注明原文链接。
原文地址:http://www.lywhy.com/SoftWare/View.asp?id=367  所属类别:软件开发
相关内容
洛阳软件开发需要多少钱? 2019/12/6
10种不同类型的软件开发 2019/11/5
如何更好的完成软件开发的项目 2018/9/18
伟创技术-婷婷:身为.NET程序员的断想 2017/2/18
【洛阳网络公司技术分享】身为.NET程序员的断想 2016/1/28
猜你喜欢
公司的未来取向取决于他们的老板 2014/8/28
如何进步网站的页面收录量 2018/1/29
怎么做原创文章 2012/9/28
新浪微博注册用户数突破5亿 75%用户活跃于移动端 2013/2/21
做网站如何才能算功德圆满? 2013/12/26
企业网站常见的功能有哪些? 2015/10/8
让网页设计得更加精细 2012/11/29
可信计算的目的和思路 2013/7/15
如何吸引各大搜索引擎蜘蛛程序经常索引您的网站 2014/12/25
做网站同样需要做到将工作做精,将服务做细! 2019/4/22
伟创热点
关于我们
公司简介
我们的优势
企业文化
公司愿景
加入伟创
伟创官方博客
金牌项目
网站建设
网站优化
软件开发
整合设计
网站运营
网站套餐
基础型网站
展示型网站
商务型网站
购物、商店型网站
FLASH动画型网站
行业、门户型网站
帮助中心
客户中心
公司SEO培训
seo顾问服务
支付方式
联系我们
我们的位置
关注我们
新浪微博
腾讯微博
人人小站
QQ空间推荐
花瓣网
建站百科全书
Copyright 2007-2012 LYWHY.Inc Sitemap 豫ICP备12012069号-1
Links
洛阳百科
建站百科