外部化弹簧配置和日志

时间:2021-06-11 11:12:07

标签: java spring configuration spring-batch

我需要你在两个问题上的帮助:

1// 我有一个带有这个 application.properties 文件的 spring 批处理应用程序:

spring.datasource.username=xxx
spring.datasource.password=xxx
spring.datasource.url=jdbc:oracle:xxxxxxxx
ClassApp=xxxx
Country=xxxxx
spring.batch.initialize-schema=always
spring.jpa.database-platform=org.hibernate.dialect.Oracle10gDialect
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
CRON_EXPRESSION=xxxxx

我想将此配置具体化为特定位置的外部文件,然后在运行应用程序生成的最终 jar 时将其传递到 jvm。

因为 jar 稍后会在 centos 机器上运行,并且属性文件中的所有变量都应该从该外部文件中获取它们的值!!

我该怎么做?

2// 另外,我的应用程序中有一些日志功能,例如:

  log.debug("CreateQuartzJob is running......");  

但我想将应用程序日志外部化到一个外部文件,也包含所有执行细节。

我怎样才能让这两个功能变得满意?

谢谢你的帮助:)

1 个答案:

答案 0 :(得分:0)

至于外部配置,您可以在运行应用程序时使用“additional-location”参数。只需创建一个属性或 yaml 文件,例如 application.yml,然后像这样运行您的 jar:

<块引用>

java -jar myJar.jar --spring.config.additional-location=file:/some/directory/application.yml