A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 大山哥哥 于 2017-1-19 20:14 编辑

1.  Struts中的国际化1Struts2中使用国际化的前提
首先,我们要知道,在Struts2中,所有的消息提示都是基于国际化的。
其次,要想在Struts2中使用国际化,动作类必须继承ActionSupport类。
2、配置资源包优先级最高(就近原则)。2.1配置全局资源包
命名规范:主要文件名_语言代码_国家代码.properties
实例:

struts配置文件中加入以下配置
  
<!--
  
     name:strutsdefault.properties文件常量里
  
     value:是国际化资源包的  包名+基本文件名
  
-->
  
<constant name="struts.custom.i18n.resources"  value="i18n.message"/>
  
jsp中使用
  
<!--
  
     s:text  :如果经过动作类到达该页面,并且配置了动作类范围的资源包,则显示动作类资源包的值,否则,显示全局范围的资源包的值
  
-->
  
<s:text name="username"/>
  

2.2配置包范围的资源包
资源包名称命名规范:package_语言代码_国家代码.properties(固定的)。以此种命名方式的资源包能被该包及其子包中的动作类访问。
实例:资源文件位置

jsp中使用包范围的国际化资源
  
<!--
  
    s:i18n  :指定包范围的文件位置, 包名+package
  
    s:text  :指定资源的key
  
-->
  
<s:i18n name="com.fei.package">
  
    <s:text name="username"/>
  
</s:i18n>
  

2.3局部消息资源包(只为动作类来使用的)
源包名称命名规范:动作类名称_语言代码_国家代码.properties。以此种命名方式的资源包,只为动作类服务。
实例:资源文件位置
Jsp中使用
  
<!-- 方式一
  
    s:text  :如果经过动作类到达该页面,并且配置了动作类范围的资源包,则显示动作类的值,否则,显示全局范围的资源包的值
  
-->
  
<s:text name="username"/><br>
  
<!-- 方式二
  
    s:i18n  :指定动作类范围的文件位置, 包名+package
  
    s:text  :指定资源的key
  
-->
  

您需要登录后才可以回帖 登录 | 加入黑马