我的Spring Boot应用程序中需要两个application.properties。
我知道使用注释@PropertySource
可以指定多个属性文件。
我尝试使用:@PropertySource({"classpath:application.properties","classpath:external.properties"})
其想法是使application.properties
具有与机器无关的属性,并且该文件将包含在war文件中。
另一个文件(external.properties
)将留在计算机中,并且不会包含在war文件中。在这里,我想保留数据库连接等属性。
我已经更改了catalina.properties,以将external.properties位置添加到类路径中,但是不幸的是,当在Eclipse上运行时,它不起作用(抱怨缺少的数据库属性。)。
答案 0 :(得分:0)
如果外部属性文件在计算机上的已知位置可用,请设置环境变量,系统属性或命令行参数以及文件路径。然后,使用@PropertySource
而非file:
classpath:
批注中的文件
示例:@PropertySource("file:${CONF_DIR}/external.properties")