springboot autoconfiguration 自动装配流程以及自定义启动类

一、自定义starter

1、pom文件

springboot autoconfiguration 自动装配流程以及自定义启动类

2、创建自定义配置类

/**
 * [简要描述]:自动装配类
 *
 * @Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法
 * 这些方法将会被AnnotationConfigApplicationContext或AnnotationConfigWebApplicationContext类进行扫描,并用于构建bean定义,初始化Spring容器
 * @Date 2019/9/12 13:34
 **/
@Configuration
@EnableConfigurationProperties(TokenProperties.class)
@ConditionalOnClass(Auth.class)
public class AutoConfigrutionClass {

    private final TokenProperties autoConfigruationProperties;

    private final ResourceLoader resourceLoader;

    AutoConfigrutionClass(TokenProperties autoConfigruationProperties, ResourceLoader resourceLoader) {
        this.resourceLoader = resourceLoader;
        this.autoConfigruationProperties = autoConfigruationProperties;
    }

    @ConditionalOnMissingBean
    @Bean
    public GetHashCodeClass getHashCodeClass() {
        return new GetHashCodeClass("");
    }
}

3、添加到配置文件

     resource->METE-INF 新建spring-factories,添加刚刚创建的配置类

org.springframework.boot.autoconfigure.EnableAutoConfiguration=starter.self.AutoConfigrutionClass,这样就ok了

二、springboot 自动装配流程

springboot autoconfiguration 自动装配流程以及自定义启动类

springboot autoconfiguration 自动装配流程以及自定义启动类

springboot autoconfiguration 自动装配流程以及自定义启动类

springboot autoconfiguration 自动装配流程以及自定义启动类