struts2——通配符的使用

来源:互联网 发布:北京金贵软件 编辑:程序博客网 时间:2024/05/20 16:43

国际化

简介:

国际化即internationalization简称i18n。我们开发出来的项目都需要根据语言的不同而发生变化,所以就要通过国际化来实现。

类似的IE中就有语言的设置:【IE——>工具——>Internet选项——>语言】就可以对语言进行修改、添加的操作

配置文件的创建:

在不同的范围内创建配置文件是有不同的命名规范的:

 命名规范:*+language_country.properties

全局范围:project\WebRoot\WEB-INF\classes下

basename_language_country.properties

包范围:同包下及子包

package_language_country,properties(此处为固定写法)

类范围:在类的当前包内使用

actionName_language_country.properties

 

struts-constant.xml中的配置:

<!-- 国际化资源文件的基本名称 在包下的时候value值需要加上包名-->
<constant name="struts.custom.i18n.resources" value="basename"/>


 

jsp中获取:

<!-- 加上struts的标签库 --><%@ taglib uri="/struts-tags" prefix="s"%>

 1、直接使用

<s:text name="name"/>

2、用<s:>标签中key获取

<s:……key="properties_var_name">

3、带有通配符的

资源文件中:properties_var_name = 随便{0}写点{1}什么

<s:text name="properties_var_name">
 <s:param>通配符赋值</s:param>
 <s:param>下一个赋值</s:param>
 </s:text>

4、访问固定包下资源文件中属性的值

   <s:i18n name="package.name">          <s:text name="properties_var_name">    <s:param>通配符赋值</s:param>    <s:param>下一个赋值</s:param>          </s:text>  </s:i18n>

 


action中获取:


直接使用getText()方法

例:System.out.println(getText("properties_var_name"));

带有通配符的

System.out.println(getText("properties_var_name"),args[]);

args[]是为通配符赋值,因为可能有多个所以使用数组或列表为其赋值

原创粉丝点击