您的位置:首页 > 编程语言 > Java开发

Struts下使用资源文件(xxx.properties)

2011-12-18 11:43 417 查看
  使用Struts开发,可以使用xxx.properties文件来保存一些重用的字符串资源。该文件以Key = Value 的方式来保存字符串资源,有助于项目的维护、国际化等。也可以通过Jsp传参数,使用{0} ~ {4} 分别代表5个从Jsp传进来的参数。示例如下:

# 工程的资源文件
# 以Key = Value 的方式来保存字符串资源,有助于维护、国际化
info.input.account = please input account
info.input.password = please input password

# 可以从jsp传参数。在Value里用{0,1,2,3,5}依次代表传过来的参数
info.input =please input {0}


  使用资源文件前,必须在struts-config.xml中进行注册。在根标签<struts-config>下使用<message-resources>标签进行注册。其中parameter属性的值代表资源文件的路径(必须)。key属性的值代表该资源的唯一标识符,可选属性,如果该属性为空,表明该资源文件是该项目的默认资源文件。示例如下:

  

<!-- 注册资源文件,如果该资源文件是默认的资源文件,就不要填写key属性.-->
<!-- 如果该资源文件是不是默认的资源文件,必须填写key属性 -->
<!-- 在Jsp通过bean:message调用时 ,如果调用默认资源文件,就不要填写bundle属性-->
<!-- 调用非默认资源文件时,填写bundle属性,值对应资源文件key属性的值 -->
<message-resources parameter="com.zet.struts.ApplicationResources" />
<message-resources parameter="com.zet.struts.ApplicationCHResources" key="CH"></message-resources>

  

   在Jsp中可以通过Struts自带的<bean:message>标签来使用资源文件。其中key属性为必须,它的值代表资源文件中的key;arg0 - arg4 为可选属性,代表传入的参数;bundle属性,可选,如果为空,代表默认资源文件,否则该值代表资源文件的唯一标识符(与struts-config.xml中的资源文件注册标签key值对应)。示例:

  

<html:form action="/login">
<bean:message key="info.input.account"/><html:text property="account"/><br/>
<bean:message key="info.input.password"/><html:password property="password"/><br/>
<html:submit/><html:cancel/>
</html:form><hr/>

传参数:

<html:form action="/login">
<bean:message key="info.input" arg0="account"/><html:text property="account"/><br/>
<bean:message key="info.input" arg0="password"/><html:password property="password"/><br/>
<html:submit/><html:cancel/>
</html:form><hr/>


使用非默认的资源文件,用bundle属性来注明资源的唯一标识符:

<html:form action="/login">
<bean:message key="info.input.account" arg0="账号" bundle="CH"/><html:text property="account"/><br/>
<bean:message key="info.input.account" arg0="密码" bundle="CH"/><html:password property="password"/><br/>
<html:submit/><html:cancel/>
</html:form><hr/>


  注:参数可以传英文也可以中文,都不会出现乱码。但是资源文件中的value不能为中文,否则出现乱码。解决方案:将带有中文的资源文件,通过使用JDK自带的native2ascii 来实现编码转换。
  用法 native2ascii -encoding gb2312 [源文件名] [目标文件名]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  struts jsp bean action html input