Web应用程序构建过程:将配置文件保存在WEB-INF / classes中?

时间:2010-11-13 13:26:49

标签: java web-applications build

有些项目,作为构建过程的一部分,清理WEB-INF中的classes文件夹,而其他项目则将一些配置文件保存在classes文件夹中。后一组可能会在其他地方使用临时文件夹来构建项目,然后将生成的类文件从此临时文件夹复制到WEB-INF / classes,从而保证其配置文件的安全。

关于此,有关于Web应用程序构建的最佳实践吗?我用蚂蚁。

1 个答案:

答案 0 :(得分:3)

用户可访问的配置文件最好存储在/classes之外,例如在/WEB-INF/config。我区分了站点管理员可以触摸的配置文件(它们位于WEB-INF下)和那些“静态”配置文件,这些配置文件仅适用于开发人员/部署配置程序(如sql脚本,XML / XSLT模板, i18n等。)

在构建期间清理WEB-INF /类是优选的做法 - 某些类被删除/重命名,资源文件也是如此。

其他配置文件,在WEB-INF下,但不在/ classes或/ lib中,必须被视为可升级资源:只有在有新资源时才替换旧资源,或者使用专门设计的升级类来添加缺失资源配置标签或行。

有一些棘手的情况,例如log4j.properties有时存储在/classes root中。如何正确处理它是一个不同的故事,但在大多数情况下,它属于“删除所有类并重新复制一切”。