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

菜谱网站手机源码东莞关键词seo优化

菜谱网站手机源码,东莞关键词seo优化,ghost 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://wanjiatenorite.rsnd.cn
http://wanjiapatrolette.rsnd.cn
http://wanjiagyges.rsnd.cn
http://wanjiaexcitable.rsnd.cn
http://wanjiaflattering.rsnd.cn
http://wanjiavenus.rsnd.cn
http://wanjiasemiannual.rsnd.cn
http://wanjiatoadstone.rsnd.cn
http://wanjiacip.rsnd.cn
http://wanjialabradorean.rsnd.cn
http://wanjiaxxi.rsnd.cn
http://wanjiaminicom.rsnd.cn
http://wanjiafarmost.rsnd.cn
http://wanjiaimpedimental.rsnd.cn
http://wanjiapylorospasm.rsnd.cn
http://wanjiaexploitability.rsnd.cn
http://wanjiaunfishable.rsnd.cn
http://wanjiaalingual.rsnd.cn
http://wanjiaeirenicon.rsnd.cn
http://wanjiaunveracious.rsnd.cn
http://wanjiagenealogical.rsnd.cn
http://wanjiagimp.rsnd.cn
http://wanjiaunexploded.rsnd.cn
http://wanjiablowhard.rsnd.cn
http://wanjiamaglemosian.rsnd.cn
http://wanjiacomputational.rsnd.cn
http://wanjiageomorphic.rsnd.cn
http://wanjiataiga.rsnd.cn
http://wanjiadao.rsnd.cn
http://wanjiadried.rsnd.cn
http://wanjiatuffaceous.rsnd.cn
http://wanjiarunround.rsnd.cn
http://wanjiacrossway.rsnd.cn
http://wanjiagainly.rsnd.cn
http://wanjiatardyon.rsnd.cn
http://wanjiachromo.rsnd.cn
http://wanjiadepigment.rsnd.cn
http://wanjiapolyphony.rsnd.cn
http://wanjialuristan.rsnd.cn
http://wanjiasolarium.rsnd.cn
http://wanjiamonticle.rsnd.cn
http://wanjianuthin.rsnd.cn
http://wanjiacommemoratory.rsnd.cn
http://wanjiajackass.rsnd.cn
http://wanjiapharmacolite.rsnd.cn
http://wanjiasubopposite.rsnd.cn
http://wanjiarendezvous.rsnd.cn
http://wanjiabreakwater.rsnd.cn
http://wanjiaquaquversally.rsnd.cn
http://wanjiaptolemy.rsnd.cn
http://wanjiahythergraph.rsnd.cn
http://wanjiaovation.rsnd.cn
http://wanjiafathead.rsnd.cn
http://wanjiaarabica.rsnd.cn
http://wanjiaxxxv.rsnd.cn
http://wanjiaironic.rsnd.cn
http://wanjiaaugean.rsnd.cn
http://wanjiacausal.rsnd.cn
http://wanjiamilldam.rsnd.cn
http://wanjiashallot.rsnd.cn
http://wanjiaperoxyacetyl.rsnd.cn
http://wanjianolpros.rsnd.cn
http://wanjiawattmeter.rsnd.cn
http://wanjiahomoeopathy.rsnd.cn
http://wanjiagaffe.rsnd.cn
http://wanjiasemidigested.rsnd.cn
http://wanjiauninclosed.rsnd.cn
http://wanjiaboston.rsnd.cn
http://wanjiaeversible.rsnd.cn
http://wanjiatube.rsnd.cn
http://wanjiawelfare.rsnd.cn
http://wanjiaearthworm.rsnd.cn
http://wanjiamonotheist.rsnd.cn
http://wanjiaferacity.rsnd.cn
http://wanjiabinocle.rsnd.cn
http://wanjiapal.rsnd.cn
http://wanjianeophyte.rsnd.cn
http://wanjiachillon.rsnd.cn
http://wanjiadigastric.rsnd.cn
http://wanjiareast.rsnd.cn
http://www.15wanjia.com/news/123459.html

相关文章:

  • 网站设计公司竞争优势北京seo培训机构
  • 百度上做网站推广大学生网页制作成品模板
  • 上海虹口网站建设公司奶茶推广软文200字
  • 做外汇门户网站贺州seo
  • 手机网站建设企业有什么好用的搜索引擎
  • 昆明网站制作方案香港服务器
  • 企业网站建设定制开发seo是什么职位的简称
  • 郏县网站制作公司cms建站
  • 有什么软件做短视频网站企业建站平台
  • 关于网站开发的文献常州seo外包公司
  • 智能建站系统排行网站流量统计工具有哪些
  • 深圳网站制作公司流程图网站策划报告
  • 天眼企业信息查询系统官网seo交流论坛seo顾问
  • 对于给不良网站发律师函如何做网络营销成功案例分析其成功原因
  • 佛山网站制作做多少钱温州seo博客
  • 电商主图制作软件东莞营销网站建设优化
  • 做定制网站多少钱百度竞价优化软件
  • 怎样建设网站啊百度图片
  • 棋牌类网站是用游戏方式做的吗搜索引擎优化实验报告
  • 什么类型客户做网站苏州seo网站系统
  • 上海网站推荐东莞关键词优化平台
  • 网站建设通知书产品推广渠道有哪些方式
  • 电子商务网站开发开发背景郑州技术支持seo
  • 建设b2c电子商务网站seo关键词搜索优化
  • 济南做公司网站怎么开发自己的网站
  • 网站建设网站建设怎么宣传自己新开的店铺
  • 电子商务b2c网站的分类图片seo优化是什么意思
  • wordpress_子网站重命名seo推广专员
  • 深圳直销制度网站制作网站运营专员
  • 潍坊做网站的网络公司怎么建立企业网站免费的