Struts2国际化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Struts2国际化相关的知识,希望对你有一定的参考价值。

1:什么是国际化?

国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有的与语言,国家/地区和文化相关的元素。换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。

2:在什么样的状况下使用国际化?

国际化是指的多语言支持,比方说你登录一个系统后,页面上的标签可以默认显示中文,或者默认显示英文。国际化在web开发中比较常用,以便于不同母语的用户使用系统。

3:为什么使用国际化?

原因:因为语言种类繁多


 4、如何国际化一个项目?

①准备界面:

注:使用ognl表达式展示国际化!<s:text>,也可以放在<s:i81n>标签中。

技术分享

 ② 创建Action类,并继承自ActionSupport类,重写execute(),封装对应的属性:

技术分享

 

③ struts.xml配置:

技术分享

 

注:

①将程序中的提示信息、错误信息等放在资源文件中,为不同国家/语言编写对应资源文件

②资源文件由很多key-value对组成,key保持不变,value随国家/语言不同而不同

③这些资源文件使用共同的基名,通过在基名后面添加语言代码、国家和地区代码来进行区分

技术分享

 

④ 配置资源文件 --中文 message.properties

注:name值必须和实体类属性值一致

技术分享

技术分享

 

英文--message_en.properties

技术分享

技术分享

 

 ⑤改变浏览器的语言首选项,通过上设置--语言设置来改变

技术分享

实现效果:

 中文:

 技术分享

英文:

 技术分享


使用国际化对页面信息进行验证:[全局、特定类]

 ① 在UserAction类中重写validate()

注:getText方法在ActionSupport类中

 技术分享

 

创建xml文件UserAction-validation.xml

注:message节点的key值必须和资源文件的name保持一致

技术分享

 

② 在中文和英文资源文件中进行配置:

技术分享


 

实现效果:

 中文:

技术分享

英文:

技术分享


 

国际化很时尚,全面发展很重要。

 

以上是关于Struts2国际化的主要内容,如果未能解决你的问题,请参考以下文章

Struts2框架使用之struts2的国际化

struts2国际化

Struts2之国际化

struts2--国际化

Struts2学习笔记(12)Struts2国际化

Struts2 国际化