springboot——原理解析

springBoot

原理解析:

pom.xml

(1)父工程

parent标签对:点进去之后还有一个parent标签对,里面加载了大量的jar包!存放着springboot的核心依赖,也不用写版本,已经在parent中自动配置管理。

(2)启动器

spring—boot—starter

pom文件配置了很多启动器,相当于springboot的启动场景。他会将所有的模块都变成启动场景。如果我们需要什么功能,就找到相应的启动器就可以了!

主程序

(1)@SpringBootApplication

标注这个类为springboot类的应用,去掉它则无法将springboot启动。

它里面的注解

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited  //前四个基础注解
@SpringBootConfiguration //springboot的配置
     //它里面的配置
     @Configuration //代表它是一个spring配置类
        @Component //它的里面的配置说明它是一个spring组件


@EnableAutoConfiguration//自动导入配置
     @AutoConfigurationPackage //自动配置包
          @Import({Registrar.class})//导入了包注册
     @Import({AutoConfigurationImportSelector.class})//自动配置导入
@ComponentScan //扫描包注解

自动装配类

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Bstc1JHW-1657241488689)(C:\Users\塔塔\AppData\Roaming\Typora\typora-user-images\image-20220707190627813.png)]

结论:springboot所有的配置都是在启动的时候扫描并且加载,spring.factories所有的自动配置类都在这里面,但是不一定生效,要判断条件是否成立,只要导入了对应的starter,就有了对应的启动器了,自动装配就会生效,然后就配置成功!

(2)SpringApplication.run()

通过反射加载类的对象,将springboot启动

配置文件解析

springboot使用一个全局的配置文件,配置文件名称是固定的。

(1)application.properties

语法结构: key=value

(2)application.yml

语法结构:key=空格 value

在这里插入图片描述

松散绑定:

当pojo实体类通过yaml赋值的时候,实体类属性名和yaml中可以名字之间加个“-”也可以进行绑定。

JSR303数据校验

使用注解@Validataed打开进行数据校验,在需要校验的属性上面使用相关注解

自动装配原理

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Mu5OSF4A-1657241529766)(C:\Users\塔塔\AppData\Roaming\Typora\typora-user-images\image-20220708084411620.png)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值