码迷,mamicode.com
首页 > 编程语言 > 详细

Springboot中enable注解

时间:2019-01-10 15:34:46      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:不用   style   []   entry   tostring   not   turn   ada   deferred   

  这句话可以作为理解springboot自动注入的原理的钥匙:ImportSelector接口的selectImports返回的数组(类的全类名)都会被纳入到spring容器中.

  至于spring怎么根据类名创建bean的就不用管了。博文地址https://www.jianshu.com/p/464d04c36fb1

public class AutoConfigurationImportSelector
		implements DeferredImportSelector, BeanClassLoaderAware, ResourceLoaderAware,
		BeanFactoryAware, EnvironmentAware, Ordered  //看这个类实现的接口多复杂
@Override
	public String[] selectImports(AnnotationMetadata annotationMetadata) {
		if (!isEnabled(annotationMetadata)) {
			return NO_IMPORTS;
		}
		AutoConfigurationMetadata autoConfigurationMetadata = AutoConfigurationMetadataLoader
				.loadMetadata(this.beanClassLoader);
		AutoConfigurationEntry autoConfigurationEntry = getAutoConfigurationEntry(
				autoConfigurationMetadata, annotationMetadata);
		return StringUtils.toStringArray(autoConfigurationEntry.getConfigurations());
	}

  这个方法就是导入了自动配置的文件的字符串。

Springboot中enable注解

标签:不用   style   []   entry   tostring   not   turn   ada   deferred   

原文地址:https://www.cnblogs.com/Robin008/p/10249744.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!