Struts 2.x权威指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.7.2 加载资源文件

Struts 2支持在JSP页面中加载局部资源文件,也支持通过全局属性来加载资源文件。

在JSP页面中加载局部资源文件可以更好地进行模块化开发,也可以提高程序后期的可维护性,是实际开发中不错的选择。

通过全局属性来加载资源文件十分方便(所有的国际化消息都放在一个文件中即可),但这种做法不利于模块化开发,也不利于项目的后期维护。

本示例应用为了简单起见,使用全局属性加载Struts 2国际化资源文件。

加载资源文件可以通过struts.properties文件来定义,本应用的struts.properties文件仅有如下一行代码。

程序清单:codes\02\2.7\struts2qsi18n\WEB-INF\src\struts.properties

# 定义Struts 2的资源文件的baseName是messageResource
struts.custom.i18n.resources=messageResource

在struts.properties文件中增加上面的代码定义后,表明该应用使用的资源文件的baseName为“messageResource”——这与我们前面保存资源文件的baseName是一致的。

Struts 2默认加载WEB-INF/classes下的资源文件,在上一节中,我们就是将资源文件保存在该路径下的。如果将该资源文件保存在 WEB-INF/classes 的子目录下,例如保存在WEB-INF/classes/lee路径下,则需要修改struts.properties中的定义如下:

# 定义Struts 2的资源文件的baseName是messageResource
# 且文件放在WEB-INF/classes/lee路径下
struts.custom.i18n.resources=lee.messageResource