原理分析

自动配置

Condition--增加的条件判断功能

来一个案例说明:

具体实现:

没有要求的话,就是这样的:

Config.java

User.java

SpringLearnApplication.java

结果:

加上要求(仅仅只是根据true和false判断)之后:

false,无法输出相应结果

需求1------导入jedis坐标之后,才能创建Bean;否则无法创建

类似于这样的一个坐标:

在我导入Jedis依赖坐标之后,获取相关信息,并进行判断,得到预期结果:

需求2------ 将类的判断定义为动态的,判断哪个字节码文件存在可以动态指定

新建一个注解类型的Java文件,相当于自定义注解类型,然后引用

需求3------通过注解属性指定值value后创建Bean(metadata)

切换内置web服务器

web内部自动引入Tomcat依赖,所以想要更换容器的话,就需要先将Tomcat依赖排除,然后再将需要的容器导入

什么也不干,使用的是Tomcat运行8081的端口:

排除一下,再另外引入一下:

实现更换:

SpringBoot笔记--自动配置(高级内容)(上集)的更多相关文章

  1. springboot mvc自动配置(三)初始化mvc的组件

    所有文章 https://www.cnblogs.com/lay2017/p/11775787.html 正文 在springboot mvc自动配置的时候,获得了DispatcherServlet和 ...

  2. 关于SpringBoot的自动配置和启动过程

    一.简介 Spring Boot简化了Spring应用的开发,采用约定大于配置的思想,去繁从简,很方便就能构建一个独立的.产品级别的应用. 1.传统J2EE开发的缺点 开发笨重.配置繁多复杂.开发效率 ...

  3. Springboot MVC 自动配置

    Springboot MVC 自动配置 官方文档阅读 https://docs.spring.io/spring-boot/docs/current/reference/html/web.html#w ...

  4. springboot(六)自动配置原理和@Conditional

    官方参考的配置属性:https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#common-appl ...

  5. springboot mvc自动配置(一)自动配置DispatcherServlet和DispatcherServletRegistry

    所有文章 https://www.cnblogs.com/lay2017/p/11775787.html 正文 springboot的自动配置基于SPI机制,实现自动配置的核心要点就是添加一个自动配置 ...

  6. 面试题: SpringBoot 的自动配置原理

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 3.Spring Boot 的自动配置原理 package com.mmall; import org. ...

  7. spring-boot spring-MVC自动配置

    Spring MVC auto-configuration Spring Boot 自动配置好了SpringMVC 以下是SpringBoot对SpringMVC的默认配置:==(WebMvcAuto ...

  8. SpringBoot的自动配置

    1.根据条件来装配bean,SpringBoot的自动配置,根据条件进行自动配置. 首先创建一个接口,如下所示: package com.bie.encoding; /** * * @Descript ...

  9. 【SpringBoot】自动配置

    一.取值 1.1 @Value 1.2 ConfigurationProperties 二.导入配置文件 2.1 @PropertySource 三.配置文件的加载 3.1 默认的加载顺序 3.2 外 ...

  10. SpringBoot学习(六)-->SpringBoot的自动配置的原理

    Spring Boot的自动配置的原理 Spring Boot在进行SpringApplication对象实例化时会加载META-INF/spring.factories文件,将该配置文件中的配置载入 ...

随机推荐

  1. 上传镜像到harbor

    https://blog.csdn.net/weixin_45335305/article/details/123817541

  2. window 安装淘宝镜像

    打开cmd, 输入如下命令 npm config set registry https://registry.npm.taobao.org 判断是否配置淘宝镜像成功 npm config get re ...

  3. 04 使用 BTrace 进行拦截调试

    BTrace BTrace 可以动态地向目标应用程序的字节码注入追踪代码,使用的技术有 JavaCompilerApi, JVMTI, Agent, Instrumentation+ASM 使用方法: ...

  4. 运用TextSuite和TestRunner运行测试脚本

    运用TextSuite和TestRunner运行测试脚本 import app.testcase.loginUI import unittest # mysuite = unittest.TestSu ...

  5. 20192305 王梓全Python程序设计实验三报告

    20192305 王梓全Python程序设计实验三报告 课程:<Python程序设计> 班级: 1923 姓名: 王梓全 学号:20192305 实验教师:王志强 实验日期:2021年5月 ...

  6. 五一训练包E-5

    题目链接:https://vjudge.net/contest/436484#problem/E 题目的大致意思就是给俩数,分别是小数组的大小N和数目K,给的数组是递增的,方便后续的判断,将大数组分成 ...

  7. 关于JDK1.8 java HashMap的tableSizeFor的解析:一个数最近2的幂次数方法

    简介 一个数的最近2的幂次数,是java hashmap初始化方法指定容量里面对容量进行处理采用的方法 1.位运算符号介绍 符号 描述 运算规则 & 与 两个位都为1时,结果才为1 | 或 两 ...

  8. Mac下如何使用EVE-NG的telnet客户端和wireshark抓包

    当我没有安装SecureCRT,点击启动的设备,弹出使用终端打开,但是由于eve中telnet使用的url是telnet xx.xx.xx.xx:xxxx 的形式,其在终端app中不能正常工作,tel ...

  9. ESXI不重启增加硬盘空间更新

    ESXI虚拟机Linux添加新磁盘后,可以通过重新扫描SCSI总线,在不重启虚拟机的情况下添加SCSI设备在线扩容磁盘(不停机)后,添加磁盘无法识别的问题,尝试了多种办法,最终通过重新扫描SCSI设备 ...

  10. nuxt,js中关于服务端不能使用localStorage和cookie的解决方案

    参考链接:https://www.npmjs.com/package/cookie-universal-nuxt 1.安装下载 npm i --save cookie-universal-nuxt 2 ...