springboot springapplication,springbootapplication运行机制
目录
@弹簧靴应用程序的使用1.Spring Boot的核心1.2 关闭自动配置@SpringBootApplication及砰的一声讲解@SpringBootApplication主要有以下注解组成@ spring boot配置@启用自动配置开启自动配置功能弹簧启动器跳羚场景启动器
@SpringBootApplication的使用
1. Spring Boot 的核心
1.1. 入口类和 @SpringBootApplication
Spring Boot的项目一般都会有*应用的入口类,入口类中会有主要的方法,这是一个标准的爪哇应用程序的入口方法。
@SpringBootApplication注解是Spring Boot的核心注解,它其实是一个组合注解:
该注解主要组合了以下注解:
@SpringBootConfiguration:这是Spring Boot项目的配置注解,这也是一个组合注解:
在Spring Boot项目中推荐使用@ SpringBootConfiguration替代@配置
@启用自动配置:启用自动配置,该注解会使Spring Boot根据项目中依赖的冲突包自动配置项目的配置项:
如:我们添加了弹簧靴起动器网的依赖,项目中也就会引入学习笔记一的依赖,Spring Boot就会自动配置雄猫和学习笔记一
@ComponentScan:默认扫描@SpringBootApplication所在类的同级目录以及它的子目录。
1.2 关闭自动配置
通过上述,我们得知,Spring Boot会根据项目中的冲突包依赖,自动做出配置,Spring Boot支持的自动配置如下(非常多):
如果我们不需要Spring Boot自动配置,想关闭某一项的自动配置,该如何设置呢?
比如: 我们不想自动配置Redis,想手动配置。
当然了,其他的配置就类似了
@SpringBootApplication及pom讲解
@SpringBootApplication 主要有以下注解组成
@ springboot配置@启用自动配置
@SpringBootConfiguration
Spring Boot配置类, 它本质上是@配置
@配置配置类注解,它本质上是一个组件@组件
@ Configuration public @ interface spring boot配置{ @ component public @ interface Configuration {
@EnableAutoConfiguration 开启自动配置功能
有了这个注解,以前我们需要自己配置的东西,现在都交由板簧罩配置
@ AutoConfigurationPackage @ Import({ autoconfigurationimportselector。class })public @ interface启用自动配置{ 1 .@自动配置包
@ Import({ registrar。class })public @ interface自动配置包{在注册器注册豆定义自动配置软件包.注册中,如下图:
获得@SpringBootApplication标注类的包名,并把该包下的所有组件扫描到弹簧容器中(在registerBeanDefinition中将对象放到的载入和解析中)
2.@ Import({ autoconfigurationimportselector。class })
Spring Boot启动时从META-INF/spring.factories文件中获取启用自动配置所指定的值,将这些值作为自动配置类导入容器中,自动配置类就生效,帮我们进行自动配置工作。
Spring启动器
弹簧靴-起动机-父母-依赖于弹簧引导依赖项
弹簧的版本管理中心,我们导入的包默认不需要写版本(如果没在属国里管理的需要注明版本)
父groupIdorg.springframework.boot/groupId artifact id spring-boot-starter-parent/artifact id version2.2.2.RELEASE/version相对路径/!-从存储库中查找父级-/父级父级groupIdorg.springframework.boot/groupId artifactId弹簧靴依赖项/version2.2.2.RELEASE/version artifactId相对路径././spring-boot-dependencies/相对路径/parent
SpringBoot 场景启动器
跳靴将所有的功能场景都抽取出来,做成初学者,只需要在项目里引入这些启动器,相关依赖都会导进来。要用什么功能就导入什么场景的启动器.
!-弹簧靴帮我们导入网模块正常运行所依赖的组件:杰森,spring-webmvc,spring-web等-依赖项依赖项groupIdorg.springframework.boot/groupId artifact id spring-boot-starter-web/artifact id/dependency/dependencies以上为个人经验,希望能给大家一个参考,也希望大家多多支持盛行它.
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。