我们有几个Spring应用程序。特别是,我们正在转向SpringBoot。例如,假设我们有应用程序A和应用程序B.A和B,可以使用不同的spring.profiles.active进行部署,例如local,dev,qa,uat和prod。对于每个配置文件,有几种配置,如数据库URL,第三方URL,cron表达式等等。
假设我在某处部署了应用程序A.是否有自动化的方法来获取包含所有环境变量配置的报告?像http://localhost:8080/applicationA/configurationReport一样?像JSP页面或json或其他任何东西。
也许春天附带的东西?
答案 0 :(得分:0)
Spring将通过PropertyPlaceholderConfigurer解析您的属性,这是一个BeanFactoryPostProcessor。
这在bean创建期间运行,并将所有占位符解析为在运行时的配置文件中找到的位置。
一旦应用程序运行,您将无法看到映射,就像JVM参数一样。
作为一个糟糕的症结,您可以通过注释为@PostConstruct
的方法将非敏感属性值记录到日志中,该方法将在设置属性后运行。或者创建一个服务以在运行时加载.properties文件,并通过公开的URL返回读取值。