一些项目,作为其构建过程的一部分,清理了 WEB-INF 中的类文件夹,而其他项目则将一些配置文件保留在类文件夹中。后一组可能会使用其他地方的临时文件夹来构建他们的项目,然后将生成的类文件从这个临时文件夹复制到 WEB-INF/classes,从而保证他们的配置文件安全。
是否有任何关于 Web 应用程序构建的最佳实践?我用 Ant 。
最佳答案
用户可访问的配置文件最好存储在 /classes
之外,例如在 /WEB-INF/config
中。我区分了站点管理员可以触摸的配置文件(它们位于 WEB-INF
下)和那些“静态”文件,它们仅供开发人员/部署配置人员使用(诸如 sql 脚本之类的东西, XML/XSLT 模板、i18n 等)。
在构建期间清理 WEB-INF/类是首选做法 - 一些类被删除/重命名,资源文件也是如此。
其他配置文件,在 WEB-INF 下,但不在/classes 或/lib 中,必须被视为可升级的资源:只有在有新的时才替换旧的,或者使用专门设计的升级类来添加缺失的配置标签或行。
有一些棘手的情况,比如 log4j.properties 有时存储在 /classes
根目录中。如何正确处理它有点不同,但在大多数情况下,它属于“删除所有类并重新复制所有内容”。
关于java - Web 应用程序构建过程 : Keep config files in WEB-INF/classes?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4172718/