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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python源代码下载_python源码解析

    python源代码下载_python源码解析python源码下载 (2010-12-1823:11)不知道python.org一直被堵在墙外… 1、http://ftp.python.org/ftp/python/ 2、http://www.python.org/ftp/python/

    2022年8月23日
  • linux内核 lock free

    linux内核 lock free//同步问题:对共享数据的访问,需要同步,互斥。在中断,抢占,多CPU,多线程环境下尤其重要。 同步分为: 阻塞同步,非阻塞同步阻塞同步有许多实现方式了:mutex,semaphore.阻塞同步使用不当就可能造成死锁,活锁,优先级反转。非阻塞同步:(现在流行三种) waitfree 很难实现,思想是本线程有限步就完成,完全不用理其余线程。 lock

    2022年7月19日
  • 游戏场景建模用什么软件?

    游戏场景建模用什么软件?游戏场景建模用什么软件?想要入行游戏领域第一步大家要知道建模要用到的软件“ZBrush”“3DMax”“MAYA”ZBrush:高模的制作软件,用ZB做角色是很很好的,可是难度系数也挺大,平常要多看看人体的构造,或找人体写真来把控不一样的人体肌肉转变,多了解多实践。3DMax:3DMax相对而言是一个较为简单易学的软件,用于做建筑场景也很的好使。可是3D要想把他学精依然要1个步骤的,因此掌握软件很重要,3D建模的软件物品很杂很碎,还需多练才最重要,多做一些实例熟记的也差不多了。MAYA:熟记人

    2022年5月19日
  • Spring AOP详细介绍

    Spring AOP详细介绍AOP称为面向切面编程,在程序开发中主要用来解决一些系统层面上的问题,比如日志,事务,权限等待,Struts2的拦截器设计就是基于AOP的思想,是个比较经典的例子。一AOP的基本概念(1)Asp

    2022年7月2日
  • 版本过低怎么升级_手机版本出现问题怎么办

    版本过低怎么升级_手机版本出现问题怎么办昨天心血来潮更新了下Eclipse下的SDK,但是由于网速、时间等原因,没有全部更新完。1、打开Eclipse的时候,提示ThisAndroidSDKrequiresAndroidDeveloperToolkitversion23.0.0orabove.Currentversionis22.6.2.v201403212031-1085508.Pleaseup

    2022年10月29日
  • U-BOOT 移植到友善之臂mini2440

    U-BOOT 移植到友善之臂mini2440

    2021年11月23日

发表回复

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

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