202301-13 JAVA Spring Boot 自动配置实现原理详解 目录引言主启动类的注解@SpringBootApplication1、@SpringBootConfiguration2、@ComponentScan3、@EnableAutoConfiguration3.1、@AutoConfigurationPackage3.2、@Import({AutoConfigurationImportSelector.class})spring-boot-autoconfigure中的默认配置类配置数据的绑定总结引言在使用ssm框架的时候,每每想要用到依赖的功能,都需要导入相关jar包,并且写配置文件做相关的配置,当然也可以不写配置文件,用配置类来代替配置文件... 继续阅读 >
202206-29 SpringBoot是如何实现自动配置的你知道吗 目录SpringBoot启动类:步骤如下:总结SpringBoot启动类:@SpringBootApplicationpublicclassCommunityApplication{publicstaticvoidmain(String[]args){SpringApplication.run(CommunityApplication.class,args);}}进入@SpringBootApplication源码中:AutoConfigurationImportSelector类的作用就是往Spring容器中导入组件,我们再进入这个类的源码,发现有这几个方法:loadmetadata的方法是加载项目的基本配置数... 继续阅读 >
202203-16 SpringBoot开发实战之自动配置 在介绍SpringBoot的自动配置之前,先了解下注解@Import的使用,SpringBoot的@Enable*开头的注解底层依赖于@Import注解导入一些类,使用@Import导入的类会被Spring加载到IOC容器中,而@Import提供了以下4中用法:直接导入Bean通过配置类导入Bean导入ImportSelector实现类,一般用于加载配置文件的类导入ImportBeanDefinitionRegistrar实现类下面来分别介绍这几种用法。直接导入Bean就比较简单了,新建一个Us... 继续阅读 >
202109-10 Springboot-yaml配置和自动配置原理分析 目录版本仲裁中心自动配置原理yaml语法和@PropertySource注解一起使用和@ImportResource一起使用配置文件占位符profile配置文件的加载顺序版本仲裁中心springdependencies中帮我们依赖了很多常用的jar包,导入这些jar包不需要版本号如:<dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId></dependency>自动配置原理配置文件配置debug:true可以在控制台打印自动配置报告.可以打印... 继续阅读 >
202108-08 详解SpringBoot自动配置源码 一、引导加载自动配置类@SpringBootApplication注解相当于@SpringBootConfiguration、@EnableAutoConfiguration、@ComponentScan这三个注解的整合@SpringBootConfiguration这个注解也使用了@Configuration标注,代表当前是一个配置类@ComponentScan包扫描,指定扫描哪些注解@EnableAutoConfiguration这个注解也是一个合成注解@AutoConfigurationPackage注解给容器中导入一个组件,利用Registrar给容器中导入一系列组件将指定的一个... 继续阅读 >
202107-01 浅谈springboot自动装配原理 目录一、SpringBootApplication二、案例三、Condition四、案例升级五、小结一、SpringBootApplication@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan(excludeFilters={@Filter(type=FilterType.CUSTOM,classes=TypeExcludeFilter.class),@Filter(type=FilterType.CUSTOM,classes=AutoConfigurationExcludeFil... 继续阅读 >
202106-19 SpringBoot自动配置原理,你真的懂吗?(简单易懂) 概述上面博文(SpringBoot简介与快速搭建)我们简单的介绍了什么是SpringBoot,以及如何使用SpringBoot,但是我们对于SpringBoot的基本原理并没有介绍,这篇博文我们重点介绍SpringBoot是如何实现的自动配置。依赖管理在我们的pom文件中最核心的依赖就一个:<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.4.4</version><relativePath/></pa... 继续阅读 >
202010-18 SpringBoot自动配置之自定义starter的实现代码 前言:前面已经介绍了自动配置的很多原理,现在我们着手自己定义一个starter。需求:自定义redis-starter,要求当导入redis坐标后,SpringBoot自动创建Jedis的Bean。正式开始之前,我们可以查看Mybatis的起步依赖是如果实现自动配置的。我这里就省略了,大家根据之前的分析文章,自己看源码即可。一、先创建一个SpringBoot工程redis-spring-boot-autoconfigure,该工程中添加jedis依赖,并且创建一个自动配置类RedisAutoConfigure... 继续阅读 >