SpringBoot源码解析之注解

SpringBoot源码解析之注解本文的代码基于1.5.9版本启动类中都需要添加@SpringBootApplication注解,该注解中包含了三个重要注解:1、@SpringBootConfiguration标记为springBoot应用,在这个注解中又有@Configuration表示是个注解配置。2、@EnableAutoConfiguration该注解中又包含@AutoConfigurationPackage…

大家好,又见面了,我是你们的朋友全栈君。

本文的代码基于1.5.9版本
启动类中都需要添加 @SpringBootApplication 注解,该注解中包含了个重要注解:

1、@SpringBootConfiguration

标记为springBoot应用,在这个注解中又有@Configuration表示是个注解配置。
SpringBootConfiguration

2、@EnableAutoConfiguration

EnableAutoConfiguration
该注解中又包含@AutoConfigurationPackage 与@Import(EnableAutoConfigurationImportSelector.class)。

2.1@AutoConfigurationPackage
表示包含这个注解的bean都会注册进spring容器。
该注解中又有@Import(AutoConfigurationPackages.Registrar.class):
这个注解的作用是注册AutoConfigurationPackages的bean信息。

另外,import注解中可以添加 Configuration, ImportSelector, ImportBeanDefinitionRegistrar 实现了这几个接口的类。

2.2@Import(EnableAutoConfigurationImportSelector.class)
设置自动配置选择器

EnableAutoConfigurationImportSelector
isEnabled方法重写了父类的方法,这个的作用是判断 spring.boot.enableautoconfiguration 有没有配置布尔值,有的话启动springboot的自动配置。
如果如下配置,springboot无法启动,需要自定义配置类

spring.boot.enableautoconfiguration=false

取消自动配置

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136710.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • DHCP协议工作流程

    DHCP协议工作流程一个全新主机的请求一次DHCP服务的过程主要包含以下四个步骤第一步:客户机操作系统生成一个DHCPdiscover发现报文,被放置在一个具有广播IP目的地址(255.255.255.255)和源IP地址为0.0.0.0的IP数据报中(网络层),发送到以太网,试图找到网络中DHCP服务器以获取一个IP地址。这一步可以简化为DHCPdiscover,源IP:0.0.0.0,目的IP:255.255.255.255,表示客户机说我需要一个IP,DHCP你在哪,能不能分我一个?第二步:当运行在路

    2022年5月23日
    42
  • 缺陷报告怎么写_注意缺陷报告单

    缺陷报告怎么写_注意缺陷报告单缺陷报告怎么写意义:开发人员和测试人员沟通的重要工具1、缺陷编号(DefectID)——提交缺陷的顺序2、缺陷标题(summary)——简明扼要的描述缺陷3、缺陷的发现者(Defectby)–4、发现缺陷的日期(Detectedondata)—-当天5、缺陷所属的模块(subject)————测试哪个功能模块的时候发现的,开发者可以由此决定谁修改该bug6、发现缺陷版本(Detectedinrelease)测试的是哪个版本(测试是回归

    2022年9月18日
    0
  • AGV控制系统搭建

    目的  本文介绍自动导引车(AGV)车载控制系统的实现过程,分为硬件搭建和软件设计两部分,并在其中穿插AGV控制的基础知识讲解。1.车载控制器1.1控制器的类型  车载控制器是控制系统乃至整个AGV的核心,那么应该选择哪种控制器呢?根据笔者的经验,现在的AGV厂家采用的车载控制器基本可以分为以下三种:  下面简要介绍几种控制器的特点:  1.PLC…

    2022年4月9日
    110
  • [Eureka]REST操作接口清单[通俗易懂]

    [Eureka]REST操作接口清单[通俗易懂]源码地址:https://github.com/Netflix/eureka/wiki数据来源:https://github.com/Netflix/eureka/wiki/Eureka-REST-operationsEureka作为SpringCloud常用的注册中心,其开放了以下接口:注:接口仅支持xml/json两种数据格式,请求时需设定Context-Type为…

    2022年8月21日
    5
  • matlab画圆的命令_matlab画圆

    matlab画圆的命令_matlab画圆要画圆的话只需要将曲率设置成1就行了。注意‘Curvature‘,[0.5,0.8]后面的两个参数[0.5,0.8]分别表示两个边的曲率。画一个圆试试,输入命令如下:rectangle(‘Position‘,[0,0,1,1],‘Curvature‘,[1,1]),axisequal;4.直接画圆已经可以了,下一步就是指定圆形坐标和半径了。我们不妨先分析一下:1.rectangle函数本来画的是…

    2022年6月19日
    58
  • 用计算机制作动画,如何使用制作工具制作一个简单的Flash动画-电脑自学网

    用计算机制作动画,如何使用制作工具制作一个简单的Flash动画-电脑自学网怎么制作Flash动画?通过AdobeFlash我们可以制作出非常有趣好看的动画,也可以制作一键简单的小动画,下面给大家介绍如何使用制作工具制作一个简单的Flash动画。操作方法:1、打开flash软件,如下图所示。2、选择新建一个flash文档,如下图所示。3、下图所示是flash的工作区域,对于各个区域的名称,我会在后续课程中进行讲解。4、先将舞台改为黑色:如下图所示。5、在舞台上利用举行工…

    2022年5月20日
    29

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号