springboot源码分析之prepareEnvironment

//进入SpringApplication找到run方法

 //选择DefaultApplicationArguments,创建应用程序参数

//然后我们在进入prepareEnvironment方法 准备环境参数

 //我们先进入getOrCreateEnvironment方法 获取或者创建环境

 //如果环境不为空,那么直接返回

//如果环境为空,根据当前web应用类型选择对应的环境创建对象

//默认为servlet 应用类型

//this.webApplicationType 在别的地方已经获取了,所以这里可以直接拿到

//如果不懂 可以看这个链接

springboot源码分析之webApplicationType_我是一只代码狗的博客-CSDN博客

 

//我们可以看到系统的属性,和环境都已经放入了

 //然后我们找到这一行listeners.environmentPrepared(environment); 环境准备

//然后跟着箭头走

//然后我们进入ConfigFileApplicationListener,找到应用事件的方法

 //然后进入onApplicationEnvironmentPreparedEvent方法,然后跟着箭头走

 

//在这里

 //profile =null就是我们的默认文件,profile=dev就是我们的dev文件

 

//从 上面的方法可以看到,默认的配置文件和dev的配置文件,已经读取到,因为我们设置了

//spring.profiles.active=dev 他读取的时候 也会读dev的信息

//点击load

 //跟着箭头走

//我们可以看下document.getActiveProfiles()的数据,这就是我们指定的环境

//吧dev添加到this的profiles中

//在这个removeUnprocessedDefaultProfiles()方法删除default

//我们再次回到主load方法 跟着箭头走

 //然后再这个this.loaded.values里面就能看到我们配置文件的信息了

 //然后进入addLoadedPropertySource(destination, lastAdded, source);

 //跟着箭头走,我们可以看到这里在索引后面追加一条数据

//然后environment的propertySources的propertySourceList集合就有新的数据了,我们可以看下效果


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值