gpt4 book ai didi

java - 如何访问java类中WEB-INF文件夹下的文件

转载 作者:太空狗 更新时间:2023-10-29 22:45:46 26 4
gpt4 key购买 nike

我在 Web 应用程序中有一个纯 Java 类,想读取 WEB-INF 文件夹下的配置文件。如果文件在类路径中(WEB-INF/classes 文件夹),我知道访问该文件的方法。由于 WEB-INF/classes 文件夹是为 .class 文件准备的,我只想将我的配置文件保存在 WEB-INF 文件夹下。

谁能告诉我如何从我的 java 类访问它?

最佳答案

ServletContext.getResourceAsStream()将从相对于 WAR 文件根目录的给定路径加载文件。像这样的东西:

ServletContext ctx;
InputStream configStream = ctx.getResourceAsStream("/WEB-INF/config.properties");

这里的主要问题是您需要访问 servlet 上下文才能执行此操作。您在 servlet 或过滤器中有它,但在应用程序中的非 Web 组件中没有。您有几个选择:

  • 通过应用程序范围的变量、注入(inject)或其他方式,使 servlet 上下文从 Web 层到服务层可用
  • 将资源加载代码放在web层,暴露给服务层
  • 在web层加载配置,并传递给service层

关于java - 如何访问java类中WEB-INF文件夹下的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12883861/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com