美文网首页
SpringBoot

SpringBoot

作者: John13 | 来源:发表于2018-09-06 11:08 被阅读0次

    1、spring boot(一):入门篇

    2、为什么说 Java 程序员必须掌握 Spring Boot ?

    3、Spring Boot 学习资料汇总

    4、Spring Cloud 学习资料汇总

    5、Sofa金融级分布式架构

    • Spring:主要是基于IOC反转Beans管理Bean类,主要依存于SSH框架(Struts+Spring+Hibernate)这个MVC框架,所以定位很明确,Struts主要负责表示层的显示,Spring利用它的IOC和AOP来处理控制业务(负责对数据库的操作),Hibernate主要作用是数据的持久化到数据库。
    • SpringMVC:是基于Spring的一个MVC框架,用以替代初期的SSH框架;(spring Framework本身没有Web功能,Spring MVC使用WebApplicationContext类扩展ApplicationContext,使得拥有web功能)。
    • Spring Boot:是基于Spring4的条件注册的一套快速开发整合包。
    • Spring Cloud:是一种云端分布式架构解决方案,基于spring boot,在spring boot做较少的配置,便可成为 spring cloud 中的一个微服务。是一系列框架的有序集合。它利用 Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线线、负载均衠、断路器、数据监控等,都可以用 Spring Boot的开发风格做到一键启动和部署。

    一、springboot启动流程

    SPRINGBOOT启动流程及其原理

    springboot特性

    springboot启动时执行

    • ApplicationListener接口实现

    ApplicationStartListener的onApplicationEvent方法在容器启动时已经被成功调用了。而此时初始化的容器为root容器

    • ApplicationRunner接口实现
    • CommandLineRunner接口实现

    CommandLineRunner与ApplicationRunner在Spring Beans初始化之后执行,执行顺序可以实现order接口或者注解@order来标记

    springboot的自动装配

    深入理解SpringBoot之自动装配

    • 自动装配是拆箱即用的基础,也是微服务化的前提。
    • 自动装配还是利用了SpringFactoriesLoader来加载META-INF/spring.factoires文件里所有配置的EnableAutoConfgruation,它会经过exclude和filter等操作,最终确定要装配的类
    • 处理@Configuration的核心还是ConfigurationClassPostProcessor,这个类实现了BeanFactoryPostProcessor, 因此当AbstractApplicationContext执行refresh方法里的invokeBeanFactoryPostProcessors(beanFactory)方法时会执行自动装配
    • 定义一个Annotation, Annotation中定义一些属性,到时候会根据这些属性的不同返回不同的class数组。
    • 在selectImports方法中,获取对应的Annotation的配置,根据不同的配置来初始化不同的class。
    • 实现ImportSelector接口的对象应该是在Annotation中由@Import Annotation来引入。这也就意味着,一旦启动了注解,那么就会实例化这个对象。

    相关文章

      网友评论

          本文标题:SpringBoot

          本文链接:https://www.haomeiwen.com/subject/yuntgftx.html