i18n国际化
*国际化的解释
*ResourceBandle实例
*Struts实例
*native2ascii 源文件名 目标文件名
*properties级别问题
action:文件名要和Action的类名一致
package:名字必须是package_..._....properties
application:名字可以随意,但是需要配置struts.custom.i18n.resoutces
*处理资源文件中的参数 login.message=welcome:{0}
<s:text value="login.message">
<param value="username"></param>
</s:text>
*国际化语言动态切换request_locale=en_US/zh_CN
<a href="language?request_locale=en_US">EN</a>
<a href="language?request_locale=zh_CN">CN</a>
---------------------------------------------------------
1,i18n的原理:根据参数不同的值,根据相同的key在不同的文件中
取到不同的value
2,实例运行
3,properties文件的级别
*action级别:配置文件的前缀名必须和类名保持一致,只在访问
这一个action的时候加载
*package级别:配置文件的前缀名必须是package,在访问当前
包下面的action都会加载
*application:配置文件的前缀名没有要求,需要在struts.xml
中进行配置,在服务器启动时加载
4,使用国际化步骤:
①创建全局的properties资源文件(注意命名)
②在struts.xml中加载properties资源文件
③在页面使用<s:text name="key"/>取到对应的资源文件中的值
*国际化的解释
*ResourceBandle实例
*Struts实例
*native2ascii 源文件名 目标文件名
*properties级别问题
action:文件名要和Action的类名一致
package:名字必须是package_..._....properties
application:名字可以随意,但是需要配置struts.custom.i18n.resoutces
*处理资源文件中的参数 login.message=welcome:{0}
<s:text value="login.message">
<param value="username"></param>
</s:text>
*国际化语言动态切换request_locale=en_US/zh_CN
<a href="language?request_locale=en_US">EN</a>
<a href="language?request_locale=zh_CN">CN</a>
---------------------------------------------------------
1,i18n的原理:根据参数不同的值,根据相同的key在不同的文件中
取到不同的value
2,实例运行
3,properties文件的级别
*action级别:配置文件的前缀名必须和类名保持一致,只在访问
这一个action的时候加载
*package级别:配置文件的前缀名必须是package,在访问当前
包下面的action都会加载
*application:配置文件的前缀名没有要求,需要在struts.xml
中进行配置,在服务器启动时加载
4,使用国际化步骤:
①创建全局的properties资源文件(注意命名)
②在struts.xml中加载properties资源文件
③在页面使用<s:text name="key"/>取到对应的资源文件中的值