spring boot简化了项目依赖相关框架的配置,一切都是约定优于配置。比如依赖mybatis框架,rabbitmq框架,其实只要在maven文件当中依赖相关的包,spring boot就会根据约定做好集成。一定程度上简化了我们的开发流程。
在之前的spring框架上,我们在定义一个bean的时候,通常都需要在xml上配置相关信息,流程上是比较繁琐的。通过springboot,只需要通过一些注解,便能定义一个bean信息。

Spring Boot启动流程

springboot内嵌了一个tomcat,当我们运行项目的main方法的时候,springboot就会把内嵌的tomcat跑起来,系统也就运行了。
关于mybaits等框架的集成,springboot会通过自动装配机制,自动完成mybatis的配置和定义,而并不需要我们程序员手动去做大量的配置,我们只需要配置必要的一些配置信息,比如数据库地址等。然后springboot就会将mybatis的相关核心组件,实例化为bean并交由spring容器管理,并自动注入到对应的dao层里,免去一些手工配置+定义bean的操作。

此时当一个用户请求过来,内嵌的tomcat就会通过一个线程将请求转发给对应的servlet,然后通过处理之后,在转发给对应的controller bean对象,controller bean对象依赖于service bean去执行业务代码逻辑,同时service bean又依赖于dao层的bean对象去访问数据库信息。dao层的bean通过mybatis核心的一些执行组件(已经交由Spring容器管理的bean实例),与数据库建立连接,执行sql语句,并将结果返回,然后原路返回,最后返回结果数据给用户。

核心流程图解

image.png