Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
保存Java配置信息的最佳位置_Java - Fatal编程技术网

保存Java配置信息的最佳位置

保存Java配置信息的最佳位置,java,Java,我正在编写一个使用一些配置的库。这些配置不会经常更改,但将来可能会更改。因此,我不想在代码中硬编码它们 对于Java库,最好的方法是什么?一种可能的解决方案是将其注入并硬编码到我假设的DI配置文件中。但这也需要修改代码 最典型的做法是什么 非常感谢您可以这样做: 将默认配置作为嵌入式资源文件添加到库jar中 然后,用户可以覆盖文件,向类路径添加具有相同路径的资源 作为文件格式,您可以使用 你可以这样加载它 Properties props = new Properties(); props.

我正在编写一个使用一些配置的库。这些配置不会经常更改,但将来可能会更改。因此,我不想在代码中硬编码它们

对于Java库,最好的方法是什么?一种可能的解决方案是将其注入并硬编码到我假设的DI配置文件中。但这也需要修改代码

最典型的做法是什么

非常感谢

您可以这样做:

  • 将默认配置作为嵌入式资源文件添加到库jar中
  • 然后,用户可以覆盖文件,向类路径添加具有相同路径的资源
作为文件格式,您可以使用

你可以这样加载它

Properties props = new Properties();
props.load(YourClass.class.getResourceAsStream("name-of-your-prop-file.properties"));
javautil是一个很好的配置工具。如果愿意,您可以将文件嵌入jar中,并使用方法加载它