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

网站做301跳转的好处dede网站模板下载

网站做301跳转的好处,dede网站模板下载,自己创造游戏的软件,wordpress文章图片粘贴固定大小前言 本文简要介绍SpringBoot的自动配置原理。 本文讲述的SpringBoot版本为#xff1a;3.1.2。 前置知识 在看原理介绍之前#xff0c;需要知道Import注解的作用#xff1a; 可以导入Configuration注解的配置类、声明Bean注解的bean方法#xff1b;可以导入ImportSele…前言 本文简要介绍SpringBoot的自动配置原理。 本文讲述的SpringBoot版本为3.1.2。 前置知识 在看原理介绍之前需要知道Import注解的作用 可以导入Configuration注解的配置类、声明Bean注解的bean方法可以导入ImportSelector的实现类【自动配置原理用到注解的这个作用】可以导入ImportBeanDefinitionRegistrar的实现类。 原理介绍 从启动类入手 一个常规的SpringBoot项目的启动类内容如下 从启动类上的SpringBootApplication入手 三个注解箭头指示的注解各有各的作用 SpringBootConfiguration组合了Configuration注解表示这是一个配置类EnableAutoConfiguration允许自动配置ComponentScanSpring的组件扫描默认扫描main方法所在类所在的包及其子包 其中第二个注解EnableAutoConfiguration是实现自动配置的关键。 从EnableAutoConfiguration注解入手 可以看到该注解中有一个Import注解先说结论在AutoConfigurationImportSelector类中加载了哪些需要自动配置的Bean并完成加载注入到IOC容器中。 到AutoConfigurationImportSelector类 从AutoConfigurationImportSelector类入手 可以看出AutoConfigurationImportSelector类是org.springframework.boot.autoconfigure包下的一个类实现了DeferredImportSelector等接口 org.springframework.boot.autoconfigure望名生意自动配置就是在该包里面规定了哪些Bean需要配置。DeferredImportSelector该接口是实现自动配置的关键里面的selectImports方法规定了哪些Bean需要自动配置。 往下滑看AutoConfigurationImportSelector类的selectImports方法 红框所示代码返回了需要自动配置的Bean列表。 从this.getAutoConfigurationEntry方法入手 protected AutoConfigurationEntry getAutoConfigurationEntry(AnnotationMetadata annotationMetadata) {if (!this.isEnabled(annotationMetadata)) {return EMPTY_ENTRY;} else {AnnotationAttributes attributes this.getAttributes(annotationMetadata);// 获取该类所在包下的META-INF/spring/目录中以.imports为后缀结尾的文件里面的内容作为候选配置列表ListString configurations this.getCandidateConfigurations(annotationMetadata, attributes);// 去除重复的配置configurations this.removeDuplicates(configurations);// 排除部分元注解信息中需要排除的配置SetString exclusions this.getExclusions(annotationMetadata, attributes);this.checkExcludedClasses(configurations, exclusions);configurations.removeAll(exclusions);// 过滤掉一些暂时不生效的配置加了如下注解的beanOnxxxConditionconfigurations this.getConfigurationClassFilter().filter(configurations);this.fireAutoConfigurationImportEvents(configurations, exclusions);return new AutoConfigurationEntry(configurations, exclusions);} }该方法中代码的逻辑如上。就剩一个this.getCandidateConfigurations方法需要再探究里面规定了从哪个地方寻找需要配置的bean列表。 从this.getCandidateConfigurations方法入手 再进入箭头所指向的load方法 可以看到该方法往包下的META-INF/spring/目录中寻找后缀名为.imports的文件。 到org.springframework.boot.autoconfigure包中看看 从idea左侧的依赖列表里面查看 点开文件里面任意一个类 都是一个自动配置类定义有相应的Bean方法。 至此SpringBoot的自动配置原理就明白了。 原理总结 启动类中有一个SpringBootApplication注解包含了EnableAutoConfiguration代表开启自动装配EnableAutoConfiguration注解里面组合了一个Import注解这个注解是实现自动配置的关键。Import注解最终的作用可以总结如下到spring-boot-autoconfigure包下的META-INF/spring目录中寻找.imports结尾的文件这里面列举了所有需要自动配置的类程序会读取这些类并加载但这些类不会全部加载因为有的类上面有条件注解需要满足特定条件时才会生效 spring-boot-autoconfigure包下的AutoConfigurationImportSelector类实现了ImportSelector并重写了selectImports方法在selectImports方法中定义类自动配置类的加载位置。还有一些配置类的去重操作、排除操作等。
http://www.hkea.cn/news/14358910/

相关文章:

  • 学校建设网站的作用wordpress添加语系
  • 手表网站错误怎么办苏州网站建设情况
  • 计算机专业论文网站开发做商城网站技术要点
  • 凯里市住房和城乡建设局网站html静态网页制作代码免费
  • 知名营销网站车网站建设策划
  • 做网站一般是什么工作商标备案查询官网
  • 河南省台前县建设局网站摄影网站网络促销方式
  • 网站框架设计图做网站排名公司推荐
  • 外贸网站cms系统做的好的家装网站
  • 爱奇艺影业公司网站开发意义电池网站建设 中企动力
  • 鄂伦春网站建设企业网站怎么做连接
  • 傻瓜式搭建网站公司简介300字
  • 百度推广需要手机网站龙岗网站建设公司怎么样
  • 新手网站建设教程图书新乡商城网站建设哪家好
  • 电脑网站怎么创建到桌面上建筑网格布搭接
  • 做cpa搭建哪个网站比较好什么是网站架构
  • 重庆网站seo分析如何看出网站开发语言
  • 稿定设计网站官网建网站挣钱
  • 中国建设劳动学会是假网站吗网站公司郑州
  • 深圳网站自然优化wordpress图片上传到七牛云
  • 怎样做网站变手机软件精品课程网站的设计与实现
  • 网站怎么做视频的软件游戏网站织梦模板
  • 网站建设与管理教程工业设计公司产品外观
  • 做近代史纲要题的网站wordpress 福利源码
  • 网站关于我们模板flash素材网站
  • 教育网站开发背景京东网站建设思维导图
  • 渭南 网站建设街区网站建设的意义
  • 南昌网站建设公务丽江网站设计公司
  • 汕头企业网站建设流程为什么wordpress 打开
  • 用html表格做的网站商标图案大全图片