ApplicationContextInitializer 和EnvironmentPostProcessor

本文介绍了SpringBoot的两个扩展接口:EnvironmentPostProcessor和ApplicationContextInitializer。EnvironmentPostProcessor允许在Spring上下文构建之前设置系统配置,而ApplicationContextInitializer则在容器刷新之前初始化Spring ConfigurableApplicationContext。两者都需要在META-INF/spring.factories文件中注册,调用顺序为EnvironmentPostProcessor先于ApplicationContextInitializer。Apollo客户端通过实现这两个接口,将配置参数加载到环境变量中。
摘要由CSDN通过智能技术生成

EnvironmentPostProcessor

SpringBoot支持动态的读取文件,留下的扩展接口org.springframework.boot.env.EnvironmentPostProcessor。这个接口是spring包下的,使用这个进行配置文件的集中管理,而不需要每个项目都去配置配置文件。这种方法也是springboot框架留下的一个扩展(可以自己去扩展)



       允许定制应用的上下文的应用环境优于应用的上下文之前被刷新。(意思就是在spring上下文构建之前可以设置一些系统配置)

EnvironmentPostProcessor的实现类必须要在META-INF/spring.factories文件中去注册,并且注册的是全类名。

鼓励EnvironmentPostProcessor处理器检测Org.springframework.core.Ordered注解,这样相应的实例也会按照@Order注解的顺序去被调用。

参考:

https://www.jianshu.com/p/be6c818fe6ff

 

ApplicationContextInitializer<C extends ConfigurableApplicationContext>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值