yml文件配置跟踪

starter启动包

从yml配置项进入,在最后一级的配置项中可以点进去,比如这里的server-addr,最后一级配置项,Idea能够提示这个配置是因为,这里的Feigin这种包一定是有对应的一个starter启动包,在包中的META-INF中的 addtionanl-spring-configuration-metadata.jsonspring-configuration-metadata.json

这两个文件描述了starter包包含哪些配置项,这里的配置项中有描述变量所在的类的全类名,所以通过yml文件可以直接点击进入对应的配置类,最终这些配置类一般会注入Spring的容器中,由Spring容器统一管理。如下方的NacosConfigProperties配置文件

源码阅读跟踪方法(自己) - 图1

  1. spring:
  2. application:
  3. name: jmfen-sport-usercenter
  4. cloud:
  5. nacos:
  6. config:
  7. server-addr: ${zlt.nacos.server-addr}
  8. file-extension: yml
  9. shared-dataids: common.yml
  10. refreshable-dataids: common.yml
  11. discovery:
  12. server-addr: ${zlt.nacos.server-addr}

项目配置类跟踪

Appliction Context Dependencies图示

在启动类中点击Spring小圆球,选中Spring Diagrams中的Appliction Context Dependencies:
源码阅读跟踪方法(自己) - 图2

默认会出现该项目的配置类情况,对应可以快速查找配置类的注入以及依赖关系
源码阅读跟踪方法(自己) - 图3

包括使用依赖的配置注入

右键或者在图上工具栏中选中libary的图标就显示所有包括依赖包的配置情况

源码阅读跟踪方法(自己) - 图4

Spring Beans类图跟踪

在启动类中点击Spring小圆球,选中Beans Dependencies,这里可以找到所有项目中被Spring显式托管的所有类
源码阅读跟踪方法(自己) - 图5

类图修改和查看

image.png
通过画出一个矩形 ,删除矩形中选中的图形,delete删除
image.png
选中某个类可以显示该类的父类和这个类的实现者,添加到图中 (可以通过操作隐藏和添加类图)
image.png
可以显示类中的方法,设置显示级别
image.png