1. 相同点

  • 都用使用@Configuration 注解.可以加 ·@Bean@Import@ImportResource.
  • @Condition 来控制加载条件.

2 不同点

2.1 使用方式

  • @Configuration –Application的用户,直接代码进行配置的。
  • AutoConfiguration 是给 Springboot 插件(xxxx.xxx.starter)使用用的。

2.2 加载的方式

  • @Configuration加载是由@ComponentScan指定的package,未指定 以ApplicationClass 所属package开始。
  • AutoConfiguration 是通过classpath*:META-INF/spring.factories来被发现。 通过 key org.springframework.boot.autoconfigure.EnableAutoConfiguration. AutoConfiguration 是由 import selector 的方式加载的
  • @Configuration 先于AutoConfiguration加载

3 需要注意

  1. ·AutoConfiguration可以使用@AutoConfigureOrder或者 @AutoConfigureBefore@AutoConfigureAfter 作为注解

  2. AutoConfiguration的class 所属包@ComponentScan ,被认为既是Configuration,又是AutoConfiguration。所以会被加载两次。 先以Configuration身份时先 加载。 因此 @AutoConfigureBefore@AutoConfigureAfter 不起作用

  3. AutoConfiguration定义了BeanPostProcessor,
    BeanPostProcessor是Spring IOC容器给我们提供的一个扩展接口

    --> Spring IOC容器实例化Bean
    --> 调用BeanPostProcessor的postProcessBeforeInitialization方法
    --> 调用bean实例的初始化方法
    --> 调用BeanPostProcessor的postProcessAfterInitialization方法
    

    Spring容器通过BeanPostProcessor给了我们一个机会对Spring管理的bean进行再加工

  4. AutoConfiguration 使用ImportBeanDefinitionRegistrar

  5. AutoConfiguration 使用ImportSelector

Configuration和AutoConfiguration相关推荐

  1. 如何做自己的服务监控?spring boot 2.x服务监控揭秘

    Actuator是spring boot项目中非常强大一个功能,有助于对应用程序进行监视和管理,通过 restful api请求来监管.审计.收集应用的运行情况,针对微服务而言它是必不可少的一个环节. ...

  2. Spring Boot 2.0官方文档之 Actuator

    https://blog.csdn.net/alinyua/article/details/80009435 前言:本文翻译自Spring Boot 2.0.1.RELEASE官方文档,该Spring ...

  3. Spring Boot框架敏感信息泄露的完整介绍与SRC实战(附专属字典与PoC)

    转载于:https://www.freebuf.com/vuls/289710.html #前言 ##Spring Boot框架介绍 Spring框架功能很强大,但是就算是一个很简单的项目,我们也要配 ...

  4. Spring Boot指标监控与健康检查

    Spring Boot指标监控与健康检查 Actuator Spring Boot Actuator 可以帮助你监控和管理 Spring Boot 应用,比如健康检查.审计.统计和HTTP追踪等.所有 ...

  5. SpringBoot (一) 入门、配置、自动配置源码剖析理解

    文章目录 0 Spring Boot 1 Overview 1.1 Introduce **Spring** SpringBoot 微服务 1.2 快速上手 Hello World pom.xml s ...

  6. Spring Boot笔记总结

    总结一下自己最近学的springboot笔记 yaml语法 #对象 student:name: juziage: 666 #行内写法 kid: {name: jujuju,age: 888}#数组 c ...

  7. 项目监控之Spring Boot 监控端点 Actuator 入门

    1. 概述 应用在部署在生产环境下,我们还需要考虑应用的管理与监控.例如说,应用是否健康存活.应用的 JVM 监控信息.服务器的监控信息(CPU.内存.磁盘等等). 如果我们为应用的管理与监控做相应的 ...

  8. springboot整合Actuator监控

    springboot整合Actuator监控. 1.简要说明: Actuator提供了对springboot应用程序监视和管理的能力,可以选择通过使用HTTP Endpoint或者使用JMX来管理和监 ...

  9. SpringBoot动态修改日志级别

    前言 为了减少日志频繁打印带来的性能影响,线上环境设置的日志级别一般都相对较高.而当出现生产问题需要排查的时候,可能需要适当降低日志级别(例如DEBUG)来打印更多的日志信息帮助定位问题. 传统的做法 ...

最新文章

  1. c语言20字节的内存的数据怎么读取_C++编程-内存对齐
  2. 凡客即便走小米模式也很难
  3. Shell Sort 希尔排序 收藏
  4. 网工基础测试题(附HCIA题库)
  5. 架构师:我们需要顶层设计
  6. ROS 创建msg和srv 编写发布者和订阅者节点 编写服务端和客户端节点(python版本)
  7. 黑客攻防技术宝典Web实战篇第2版—第8章 攻击访问控制
  8. django mac 安装mysql_mac安装MySQL-Python报错
  9. VMware Workstation 12 安装小于4GB的GHOST 64位win7系统
  10. 淘客用户订单同步思路
  11. 计算机音乐吧粉刷匠,中班音乐歌曲《粉刷匠》
  12. 再观《一步之遥》观后感
  13. 小米应用市场隐私政策
  14. Linux系统重装时保留重要分区
  15. 如何开始学剪辑?零基础详细解析
  16. linux能修改用户的权限,linux怎样修改用户权限
  17. Android 开发工具集合
  18. 介绍一款Oracle的利器小工具-SQLcl
  19. [论文总结] 美国造林业过去30年的惊人变化
  20. 第三章 Alter DE2-115 开发板的应用

热门文章

  1. 国内多地测试网站访问速度
  2. Linux-Centos设置Redis自启及关闭Nginx自启
  3. Python+Selenium4元素定位_web自动化(3)
  4. 用计算机弹邓紫棋的画,猜歌王携手小天后邓紫棋 掀起劲爆音乐狂潮
  5. Spring 注入方式之工厂方法注入
  6. 电脑黑屏了怎么解决?
  7. AndroidAuto连接流程及代码实现
  8. SAAS系统架构之数据存储方案
  9. 回报园子,推荐个靠谱的北京IT高端职位招聘信息微信
  10. YONEX的羽毛球拍线