gpt4 book ai didi

java - Spring:如何在服务层访问webapp/resources的内容

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:43:31 25 4
gpt4 key购买 nike

如何从服务层访问我的 webapp/resources 文件夹的内容?我需要访问一个用于 Elasticsearch 映射的 JSON 文件...

我的项目结构是这样的: https://www.dropbox.com/s/crdzae1ko0x9p89/Screenshot%202015-05-25%2010.24.12.png?dl=0

我试过这个: http://www.mkyong.com/java/java-read-a-file-from-resources-folder/

String mapping = String.format("es_mappings/%s.json", type);
ClassLoader classLoader = getClass().getClassLoader();
String result = IOUtils.toString(classLoader.getResourceAsStream(mapping));

但是我在上面的代码片段的第三行得到了一个空指针异常。

也试过这个:

File file = ResourceUtils.getFile("classpath:es_mappings/bom_exports.json")
String txt= FileUtils.readFileToString(file);

但我收到此错误:java.io.FileNotFoundException:类路径资源 [es_mappings/bom_exports.json] 无法解析为绝对文件路径,因为它不在文件系统中。

我的 -servlet.xml 文件中有这个:

<mvc:resources location="/resources/" mapping="/resources/**"/>

谢谢。

最佳答案

我使用这段代码。它简单且有效。

import org.springframework.beans.factory.annotation.Value;
import org.springframework.core.io.Resource;

// ...

@Value("/resources/json/your_file.json")
private Resource jsonResource;

// ...

InputStream jsonStream = jsonResource.getInputStream();

现在可以使用stream读取json了。

关于java - Spring:如何在服务层访问webapp/resources的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30431025/

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