程序国际化是商业系统的一个基本要求,而Struts2国际化是建立在java国际化标准之上的。struts2国际化是提供不同语言环境,在struts2里面一样是通过ResourceBundle加载指定的Locale对应的资源文件,在取得该资源的key对应的消息。整个过程和java程序国际化是一样的!
在struts2里面调用国际化资源,只需要在struts的配置文件里面定义就可以了
在XML里面:
<constant name="struts.custom.i18n.resources" value="anyName"/>
如上图
在properties里面
struts.custom.i18n.resources=anyName
当在配置文件中定义了如上的代码后,就可以使用国际化支持了。不过,要先定义好国际化的map实例(就是说定义一些文件,在中国使用中国的文件,在美国使用美国的文件。用map的key-value来定义,一般在src目录下定义.properties后缀名的文件)
上图在mess_en_US.properties里面的内容
上图是mess_en_US.properties里面的内容(注意,在properties里面使用中文的时候,要用java的native2ascii工具进行处理)
结果:
输出的结果可以再jsp和action类(继承ActionSupport类)
如果在jsp里面输出
如上图
如果浏览器在中国环境内,会用定义好的中文显示。
如果浏览器在美国环境内,会用定义好的英文显示。
也可以再action类里面调用
这样子定义就OK了 注意:gettext()