当前位置: 首页 > news >正文

怎么做好网站推广百度app官网下载安装

怎么做好网站推广,百度app官网下载安装,免费网站建设哪家好,电脑上怎么删除wordpress一、什么是自动装配 在使用SpringBoot的时候,会自动将Bean装配到IoC容器中。例如我们在使用Redis数据库的时候,会引入依赖spring-boot-starter-data-redis。在引入这个依赖后,服务初始化的时候,会将操作Redis需要的组件注入到IoC…

一、什么是自动装配

在使用SpringBoot的时候,会自动将Bean装配到IoC容器中。例如我们在使用Redis数据库的时候,会引入依赖spring-boot-starter-data-redis。在引入这个依赖后,服务初始化的时候,会将操作Redis需要的组件注入到IoC容器中进行后续使用

自动装配大致过程如下:

获取到组件(例如spring-boot-starter-data-redis)META-INF文件夹下的spring.factories文件

spring.factories文件中列出需要注入IoC容器的类

将实体类注入到IoC容器中进行使用

二、自动装配原理

自动装配大致流程是通过@SpringBootApplication进行实现,这个注解声明在SpringBoot的启动类上

1、SpringBoot启动类

2、@SpringBootApplication注解

SpringBoot启动类=>@SpringBootApplication

3、@SpringBootConfiguration注解

SpringBoot启动类=>@SpringBootApplication=>@SpringBootConfiguration

通过@SpringBootConfiguration注解标识SpringBootApplication是一个SpringBoot配置类

@AliasFor注解用于为注解属性声明别名(@SpringBootApplication注解也有@AliasFor注解)

4、@EnableAutoConfiguration注解

SpringBoot启动类=>@SpringBootApplication=>@EnableAutoConfiguration

通过@EnableAutoConfiguration注解实现自动装配

5、@AutoConfigurationPackage注解SpringBoot启动类=>@SpringBootApplication=>@EnableAutoConfiguration=>@AutoConfigurationPackage

通过@AutoConfigurationPackage注解将添加该注解的类所在的package作为自动配置package进行管理

通过AutoConfigurationPackages工具类获取自动配置package列表,也就是说当SpringBoot应用启动时默认会将启动类所在的package作为自动配置的package

6、@EnableAutoConfiguration注解最重要的是AutoConfigurationImportSelector.class,将需要装配的类装配到IoC容器中,下面重点分析一下这个类的实现

三、核心类分析

1、selectImport方法

AutoConfigurationImportSelector中的selectImport方法是自动装配的核心实现,它主要是读取META-INF/spring.factories文件,经过去重、过滤,返回需要装配的配置类集合

2、getAutoConfigurationEntry方法

selectImport方法=>getAutoConfigurationEntry方法

getAttributes方法:获取@EnableAutoConfiguration中的exclude、excludeName等

getCandidateConfigurations方法:获取所有自动装配的配置类,也就是读取spring.factories文件,后面会再次说明

removeDuplicates方法:去除重复的配置项

getExclusions方法:根据@EnableAutoConfiguration中的exclude、excludeName移除不需要的配置类

fireAutoConfigurationImportEvents方法:广播事件

最后根据多次过滤、判重返回配置类合集

3、getCandidateConfigurations方法

selectImport方法=>getAutoConfigurationEntry方法=>getCandidateConfigurations方法

通过loadFactoryNames方法,扫描classpath下的META-INF/spring.factories文件,里面是以key=value形式存储,读取其中key=EnableAutoConfiguration,value就是需要装配的配置类,也就是getCandidateConfigurations返回的值

四、总结

1)通过注解@SpringBootApplication=>@EnableAutoConfiguration=>@Import({AutoConfigurationImportSelector.class})实现自动装配

2)AutoConfigurationImportSelector类中重写了ImportSelector中selectImports方法,批量返回需要装配的配置类

3)通过Spring提供的SpringFactoriesLoader机制,扫描classpath下的META-INF/spring.factories文件,读取需要自动装配的配置类

4)依据条件筛选的方式,把不符合的配置类移除掉,最终完成自动装配

http://www.hrbkazy.com/news/5023.html

相关文章:

  • 做的网站文字是乱码怎么做网站优化排名
  • 做网站用到其他网站的素材是侵权吗网站收录优化
  • 网站开发用mvc多吗网站建设步骤
  • java做网站微信支付蜜雪冰城推广软文
  • 赣州网络优化seo有些什么关键词
  • 怎么用源码建站网络营销和传统营销的区别有哪些
  • 地方网站发展广告文案
  • 上什么网站做会计教育app广告联盟平台
  • 网站编辑心得体会百度文库个人登录入口
  • wordpress网站跳转nginx搜索引擎收录查询
  • 网站开发点赞收藏设计思路怎么做网页设计的页面
  • 长春建设集团股份有限公司网站2345网址导航官网官方电脑版
  • 北京保障房建设项目网站培训机构在哪个平台找
  • 企点营销软件东莞网站seo技术
  • 门户网站建设经验交流全球网站排名查询网
  • app网站建设成人培训机构
  • 动态网站开发中央网站seo
  • 福田政府在线网站优化设计电子版
  • 做外贸有那些网站平台手机黄页怎么找
  • 做公司网站建设价格常州百度推广代理公司
  • zhihu网站建设杭州seo排名收费
  • 设计好看的网页怎么做优化
  • 公司建设网站费用属于什么费用培训机构需要哪些证件
  • 给公众号做头像的网站怎样做百度推广网页
  • 百度推广 做网站百度关键词点击排名
  • 短租网站开发优化设计四年级上册数学答案
  • 提供邢台网站优化搜索关键词排名提升
  • 网站建设规划怎么写线上培训机构
  • 如何网站开发如何网络媒体推广
  • 和平东路网站建设免费域名注册查询