java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Spring Boot  自动配置

Spring Boot 中的自动配置autoconfigure详解

作者:小宝945

这篇文章主要介绍了Spring Boot 中的自动配置autoconfigure详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

一、自动配置的原理

自动配置:从类路径中,搜索相关的 jar,根据 jar 的内容,尝试创建所需的对象。例如,如果有 MyBatis .jar,Spring Boot 会尝试创建 DataSource(根据配置文件中的url,username,password)连接数据库。还需要创建 SqlSessionFactory,Dao 接口的代理对象。这些内容不需要开发人员写一行代码,就能使用 MyBatis 框架了。

在这里插入图片描述

二、关键注解和类

1.@EnableAutoConfiguration 注解

@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@AutoConfigurationPackage
@Import(AutoConfigurationImportSelector.class)
public @interface EnableAutoConfiguration {
	String ENABLED_OVERRIDE_PROPERTY = "spring.boot.enableautoconfiguration";
	Class<?>[] exclude() default {};
	String[] excludeName() default {};
}

2.@Import 注解

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface Import {
    Class<?>[] value();
}

@Import:导入类,注册为Bean。@Import 相当于 xml 文件中的 。可以导入@Configuration 的类,实现了 ImportSelector 接口的类,ImportBeanDefinitionRegister 接口的类。

3.AutoConfigurationImportSelector 类

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.@AutoConfiguration 注解

5.其他相关的注解和类

到此这篇关于Spring Boot 中的自动配置autoconfigure的文章就介绍到这了,更多相关Spring Boot 自动配置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文