修改默认配置

        @Bean@ConditionalOnBean(MultipartResolver.class)  //容器中有这个类型组件@ConditionalOnMissingBean(name = DispatcherServlet.MULTIPART_RESOLVER_BEAN_NAME) //容器中没有这个名字 multipartResolver 的组件public MultipartResolver multipartResolver(MultipartResolver resolver) {//给@Bean标注的方法传入了对象参数,这个参数的值就会从容器中找。//SpringMVC multipartResolver。防止有些用户配置的文件上传解析器不符合规范// Detect if the user has created a MultipartResolver but named it incorrectlyreturn resolver;}
给容器中加入了文件上传解析器;

SpringBoot默认会在底层配好所有的组件。但是如果用户自己配置了以用户的优先

@Bean@ConditionalOnMissingBeanpublic CharacterEncodingFilter characterEncodingFilter() {}

总结:

  • SpringBoot先加载所有的自动配置类 xxxxxAutoConfiguration
  • 每个自动配置类按照条件进行生效,默认都会绑定配置文件指定的值。xxxxProperties里面拿。xxxProperties和配置文件进行了绑定
  • 生效的配置类就会给容器中装配很多组件
  • 只要容器中有这些组件,相当于这些功能就有了
  • 定制化配置

    • 用户直接自己@Bean替换底层的组件
    • 用户去看这个组件是获取的配置文件什么值就去修改。

xxxxxAutoConfiguration ---> 组件 ---> xxxxProperties里面拿值 ----> application.properties

springboot-自动配置流程相关推荐

  1. springboot自动配置流程

  2. 注解不自动导包_玩转SpringBoot2.X:SpringBoot自动配置原理大揭秘

    我们在使用SpringBoot的时候,是不是觉得特方便,根本不需要我们去配置什么端口号,应用名称,又比如我们再整合redis的时候,其实也不需要我们去指定端口号,IP,都会有默认的.是不是特方便.那么 ...

  3. SpringBoot 自动配置初探

    SpringBoot 自动配置初探 @EnableAutoConfiguration @Import(AutoConfigurationImportSelector.class) selectImpo ...

  4. eclipse创建springboot项目_创建SpringBoot自动配置项目:Starter测试使用

    Starter 测试使用 完成了 starter 项目的创建.发布之后,在 Spring Boot 项目中便可以直接使用了,下面简单介绍一-下 Starter 测试使用步骤,其中省略掉了 Spring ...

  5. 笑死,面试官又问我SpringBoot自动配置原理

    面试官:好久没见,甚是想念.今天来聊聊SpringBoot的自动配置吧? 候选者:嗯,SpringBoot的自动配置我觉得是SpringBoot很重要的"特性"了.众所周知,Spr ...

  6. SpringBoot自动配置的原理及实现

    SpringBoot的核心就是自动配置,自动配置是基于条件判断配置Bean 自动配置的源码在spring-boot-autoconfigure-2.2.13.RELEASE SpringBoot运行原 ...

  7. 这样讲 SpringBoot 自动配置原理,你应该能明白了吧

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:你在我家门口 juejin.im/post/5ce5effb ...

  8. 【Spring框架家族】SpringBoot自动配置基本实现

    SpringBoot自动配置-Condition_1 Condition是Spring4.0后引入的条件化配置接口,通过实现Condition接口可以完成有条件的加载相应的Bean @Conditio ...

  9. SpringBoot 自动配置

    Springboot 自动配置 关注 "弋凡"(YiFan)微信公众号吧 记录简单笔记 做你的最爱 Springboot 是什么呐? 我管她是什么,好用就行了啊!!! spring ...

  10. SpringBoot实战之SpringBoot自动配置原理

    www.cnblogs.com/leihuazhe/p- SpringBoot 自动配置主要通过 @EnableAutoConfiguration, @Conditional, @EnableConf ...

最新文章

  1. 智源沙龙 | 人工智能“3个30年”之后,下个30年将走向何方?
  2. sys.argv[]学习
  3. 介绍linux下Source Insight强大代码编辑器sublime_text_3
  4. ubuntu16.04 uninstall cuda 9.0 completely and install 8.0 instead
  5. 《云计算》学习笔记1
  6. php socket 握手,python Socket之客户端和服务端握手详细介绍
  7. mysql split 按 分割_mysql分割字符串split
  8. 现代软件工程 M1 博客要求
  9. 字段类型 sqoop_数据迁移工具Sqoop
  10. FastJSON、Gson和Jackson性能对比
  11. Java设计模式-装饰者设计模式
  12. oracle+性能负载查看,Oracle 11g数据库重放教程(二):负载重放基本实例讲解-性能调优-Oracle频道-中国IT实验室...
  13. mac 重启后提示 路径/System/installation/Packages/OSinstall.mpkg 似乎已缺失或已损坏,的解决方法
  14. 掘金夜谈-畅聊程序人生(笔记)
  15. 计算机办公操作excel,办公中常用的Word及Excel的方法有哪些
  16. 远程桌面由于以下原因无法连接远程计算机,win10远程桌面提示由于以下原因之一无法连接的解决教程...
  17. 点赋网络:网店详情页设计中应包含哪些设计元素
  18. windows内码、外码、字符映射表
  19. lan代表计算机什么,LAN 是什么
  20. 机器学习中的random_state参数

热门文章

  1. git 创建 本地 裸 仓库
  2. build.xml编译报错Specified VM install not found: type Standard VM, name jdk1.7.0_45
  3. 深入了解java虚拟机(JVM) 第六章 垃圾回收算法
  4. codeforces 689B Mike and Shortcuts 最短路
  5. 从上往下打印出二叉树的每个节点,同层节点从左至右打印
  6. 统计十进制数的二进制数1的个数
  7. Dx11DemoBase 基类(二) 初始化 DirectX11 的 4个基本步骤
  8. Linux 下hosts文件详解
  9. 用java分组查elasticsearch
  10. JavaScript君,请您坦诚相待~~~