我在我的application.properties
中添加了以下属性,以将敏感帐户信息与主应用程序分开。
#/src/main/resources/application.properties
spring.config.additional-location=/etc/java/myapp/
spring.datasource.url=jdbc:mysql://localhost/mytable
其他:
#/etc/java/myapp/application.properties:
spring.datasource.username=theuser
spring.datasource.password=thepw
结果:找不到属性!
java.sql.SQLException: Access denied for user ''@'localhost' (using password: NO)
我在这里做什么错了?
旁注:如果添加默认值,问题仍然存在。该属性不会被覆盖!
spring.datasource.username = replaceme spring.datasource.password = replaceme
结果:
java.sql.SQLException: Access denied for user 'replaceme'@'localhost' (using password: YES)
答案 0 :(得分:1)
注意:从文档中,从Spring Boot 2.0 spring.config.location
升级到spring.config.additional-location
命令行:java -jar名称--spring.config.additional-location = / etc / java / myapp /
spring.config.name和spring.config.location很早就用于确定必须加载哪些文件,因此必须将其定义为环境属性(通常是OS环境变量,系统属性,或命令行参数)。