zoukankan      html  css  js  c++  java
  • Struts2的国际化入门

    Struts2的国际化入门

      Struts2国际化是建立在Java国际化的基础上的,一样是通过提供不同国家/语言环境的消息资源,然后通过ResourceBundle加载指定Locale对应的资源文件,再取得该资源文件中指定key对应的消息--整个过程与JAVA程序的国家化完全相同,只是Struts2框架对JAVA程序国际化进行了进一步封装,从而简化了应用程序的国际化.

    Struts2需要国际化的部分

      a、类型转换:
      b、数据校验:
      c、验证框架xml配置文件的国际化:RegisterAction-validation.xml文件<message key="username.xml.invalid"/>
      d、JSP页面的国际化:<s:text name="addUser"/>
      e、Action的国际化:利用ActionSupport类提供的getText()方法.

    Struts2中加载全局资源文件

      方式一:struts.xml

    <constant name="struts.custom.i18n.resources" value="baseName"/>

      方式二:struts.properties

    struts.custom.i18n.resources=baseName

    Struts2访问国际化消息主要有如下三种方式:

      a、JSP页面:<s:text name="key"/>

      b、Action类中:使用ActionSupport类的getText方法。

      c、表单元素的Label里:为表单元素指定一个key属性

    Struts2中提供了如下两种方式来填充消息字符串中的占位符

      a、JSP页面,在<s:text.../>标签中使用多个<s:param.../>标签来填充消息中的占位符。

      b、Action中,在调用getText方法时使用getText(String aTextName,List args)或getText(String key, String[] args)方法来填充占位符。

    加载资源文件的方式

      a、加载全局资源文件: <constant name="struts.custom.i18n.resources" value="baseName"/>

      b、包范围资源文件 :为Struts2指定包范围资源文件的方法是,在包的根路径下建立多个文件名为package_language_country.properties的文件,一旦建立了这个系列的国际化资源文件,应用中处于该包下的所有Action都可以访问该资源文件。需要注意的是上面的包范围资源文件的baseName就是package,不是Action所在的包名。

      c、Action范围资源文件:在Action类文件所在的路径建立多个文件名为ActionName_language_country.properties的文件。

    加载资源文件的顺序

      类资源->包资源->全局资源

  • 相关阅读:
    修改Tomcat可支持get形式url长度
    UTF-8 带签名和不带签名的区别
    注册asp.net 4.0版本到IIS服务器中
    C#计算字符串长度,汉字算两个字符
    高德地图Javascript API设置域名白名单
    金三银四招聘季,这些BAT以及独角兽互联网公司官方招聘网站值得关注。(个人梳理备用:附BAT以及独角兽公司官方招聘网址)
    【转载】 C#工具类:Csv文件转换类
    【转载】ASP.NET生成图片的缩略图
    【转载】IIS报错不是有效的Win32应用程序
    【转载】C#工具类:FTP操作辅助类FTPHelper
  • 原文地址:https://www.cnblogs.com/caoyc/p/5588579.html
Copyright © 2011-2022 走看看