首页 > 解决方案 > 如何从应用程序外部存在的属性文件中检索值

问题描述

在一个应用程序上工作,我想从应用程序外部(即系统驱动器上)的属性文件中检索值。但是在这样做时我遇到了问题。有趣的是,如果我将属性文件放在类路径位置,那么应用程序就可以工作。我正在使用带有 spring 2.5.4 jars 的树脂服务器 4.0.23 和 mvc 架构。我也在树脂 4.0.9 的树脂升级版上进行了尝试。我也遇到了同样的问题。

有什么办法可以解决这个问题吗?

标签: javaspringspring-boot

解决方案


如果您想从系统上的任意路径读取属性文件,您需要执行类似的操作

Properties props = new Properties();
props.load(new FileInputStream(somefilename));

如果您尝试通过调用 getResource() 或 getResourceAsStream() 来加载属性文件,那么您的属性文件应该可以从 ClassLoader 访问,通常位于类路径上。检查 Class.getResource 和 ClassLoader.getResource 的文档


推荐阅读