![](/img/trans.png)
[英]Recomended places and practices to store files generated from a Tomcat application?
[英]Best practices to store and access resource files in java web application
我有一堆文本,xml和其他文件(即资源),我需要使用java web app中的servlet访问。 例如,有一个xml文件,其中一部分由用户查询返回servlet。 我正在使用Tomcat。 存储这些文件并从java代码访问它们的最佳实践是什么? 1)我应该在哪里放置默认文件夹,是否需要将它们放入Web存档或其中一个Jars中? 2)如何从java代码访问文件? 如何设置它们的路径,以便它可以在任何环境中工作? PS我已经阅读了许多与此主题相关的帖子,其中大多数都建议将资源存储在jar中并使用java.lang.Class.getResourceAsStream(String)访问它们。 这看起来很奇怪,因为类和数据应该分开。
使用类加载器加载静态资源非常好。 这就是ResourceBundle为加载国际化属性文件所做的事情。
将它们与您的类文件一起放在WEB-INF/classes
,或者放在WEB-INF/lib
中的jar中,然后使用ClassLoader加载它们,如您已经阅读的答案所示。
这并不禁止您将这些文件放在与项目中的Java源文件不同的目录中。 构建过程应该确保将它们放在运行时的适当位置。 Maven和Gradle约定是将源文件放在src/main/java
,将资源文件放在src/main/resources
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.