gpt4 book ai didi

java - 如何在 Spring 中使用 ClassPathResource 加载外部文件?

转载 作者:行者123 更新时间:2023-11-29 02:58:31 27 4
gpt4 key购买 nike

我们在一个驱动器上有一个文件 (C:\megzs\realm.properties)。我们想加载此文件并使用 Spring 中可用的 ClassPathResource 读取内容。但是我们看到文件未找到异常。我们正在尝试的代码是

Resource resource = new ClassPathResource("file:c:/megzs/realm.properties");
Properties prop = PropertiesLoaderUtils.loadProperties(resource);

这里我们使用 ClassPathResource 来加载外部文件。 ClassPathResource 可以加载外部文件吗?
以及我们如何加载多个属性文件(一个来自类路径,另一个来自绝对路径)??

最佳答案

如果您想访问基于文件的资源,请使用 FileSystemResource 并将其提供给 PropertiesLoaderUtils.loadProperties() 方法。下面的代码从文件系统读取属性文件,如果不存在,它将从类路径加载它。希望对您有所帮助。

    public static Properties getProperties(String propertyFile) {
try {
Resource resource = new FileSystemResource(propertyFile);
if (!resource.exists()) {
resource = new ClassPathResource(propertyFile);
}
return PropertiesLoaderUtils.loadProperties(resource);
} catch (Exception ignored) {
return null;
}
}

关于java - 如何在 Spring 中使用 ClassPathResource 加载外部文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36672516/

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