SpringBoot启动流程一
我们首先创建一个新的springboot工程
我们不添加任何依赖
查看一下pom文件
我们创建一个文本文档
记录我们的工作流程
我们需要的是通过打断点实现
我们首先看一下启动响应类
package com.bigdata1421.start_up;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
public class StartUpApplication {public static void main(String[] args) {SpringApplication.run(StartUpApplication.class, args);}}
我们在这里启动
加载main方法
调用第10行的方法
这个run方法是干嘛的呢
我们进入源码查看
primarySource是指这个类
如果一个接口有四个实现类
但是你想设置某一个实现类为主体加载的
你就可以加上@Primary注解
这样这个实现类就是在自动转配中被加载的bean
我们再进入SpringApplication类里面run方法
中的run方法
是另一个run方法
我们再进入这个方法查看
我们在文本文档里记录一下
运行的是SpringApplication里面822行的这个方法
但是我们发现我们还是调用这个类里面的方法
再记录一下
我们在文本文档里再记录一下
StartUpApplication[10] -> SpringApplication.run(StartUpApplication.class, args);SpringApplication[822] -> return run(new Class[]{primarySource}, args);SpringApplication[826] -> return (new SpringApplication(primarySources)).run(args);
这就是一个纯调用
去new了一个SpringApplication对象 让这个对象去调用run方法
参数为args这个数组
这个参数为命令行参数
我们可以在项目配置里面编辑这个参数
然而这个我们可以分成两部分
创建一个新的对象 用这个新的对象去调用方法
StartUpApplication[10] -> SpringApplication.run(StartUpApplication.class, args);SpringApplication[822] -> return run(new Class[]{primarySource}, args);SpringApplication[826] -> return (new SpringApplication(primarySources)).run(args);# 加载各种配置信息 初始化各种配置对象SpringApplication(primarySources)# 初始化容器new SpringApplication(primarySources).run(args)
我们的核心就是这两块的内容
加载各种配置信息 初始化各种配置对象
初始化容器
个人号推广
博客主页
朱道阳-CSDN博客
Web后端开发
https://blog.csdn.net/qq_30500575/category_12624592.html?spm=1001.2014.3001.5482
Web前端开发
https://blog.csdn.net/qq_30500575/category_12642989.html?spm=1001.2014.3001.5482
数据库开发
https://blog.csdn.net/qq_30500575/category_12651993.html?spm=1001.2014.3001.5482
项目实战
https://blog.csdn.net/qq_30500575/category_12699801.html?spm=1001.2014.3001.5482
算法与数据结构
https://blog.csdn.net/qq_30500575/category_12630954.html?spm=1001.2014.3001.5482
计算机基础
https://blog.csdn.net/qq_30500575/category_12701605.html?spm=1001.2014.3001.5482
回忆录
https://blog.csdn.net/qq_30500575/category_12620276.html?spm=1001.2014.3001.5482