springboot必知必会

什么是SpringBoot?

Spring Boot 是由 Pivotal 团队提供的基于 Spring 的全新框架,旨在简化 Spring 应用的初始搭建和开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。 约定大于(优于)配置

SpringBoot的run方法做了什么事?

run方法其实就是做了一个IOC初始化的操作

@ComponentScan注解是干什么的?

被@ComponentScan修饰的java类,如果没有指定具体的扫描路径。实际上他默认的扫描路径是当前JAVA类所在的路径及其子路径,都是被扫描的范围。

@EnableAutoConfiguration注解是干什么的?

@EnableAutoConfiguration        开启自动配置        开启自动装配

Import注解的三种使用用法

1.静态注入的方式

2.实现了我们的ImportSelector接口,并且实现了selectImports方法,那么我们的返回值就是selectImports的方法的返回类型。

3.实现了ImportBeanDefinitionRegistrar接口,并且实现了registerBeanDefinitions方法。那么这个时候我们可以自行封装BeanDefinition

SpringBoot自动装配的核心配置文件有哪些?

META-INF/spring.factories        候选

META-INF/spring-autoconfigure-metadata.properties         过滤

SpringBoot自动装配的流程是怎样的?

首先,咱们的SpringBoot肯定是执行了Main方法中的run方法,而我们的run方法中会做IOC的初始化,那么我们的SpringBoot显然不会进行配置文件的初始化,而是注解初始化。那么显然我们会将java配置类的类对象传递进去,我们会走到@SpringBootApplication注解,接下来,很显然,起作用的是@EnableAutoConfiguration注解,接下来,这个注解会去加载我们的spring.factories跟spring-autoconfigure-metadata.properties这两个配置文件,进行候选以及筛选的工作,加载进去内存之后,实际上我们会在AutoConfigationImportSelect中加载spring.factories跟spring-autoconfigure-metadata.properties,我们会在返回的时候加载进入容器,这就是自动装配的流程。

bootstrap.yml的意义

SpringBoot中默认支持的属性文件有下面4种

application.properties application.xml

application.yml aplication.yaml

那么为什么还有一类bootstrap.yml bootstrap.properties文件

bootstrap.yml在SpringBoot中默认是不支持的,需要在SpringCloud环境下才支持,作用是在SpringBoot项目启动之前启动的一个父容器,该父容器可以在SpringBoot容器启动之前完成一些加载初始化的操作。比如加载配置中心中的信息。

运行SpringBoot项目的方式

1、 打包用命令或者者放到容器中运行

2、 用 Maven/ Gradle 插件运行

3、 直接执行 main 方法运行

SpringBoot如何解决跨域问题

跨域可以在前端通过 JSONP 来解决,但是 JSONP 只可以发送 GET 请求,无法发送其他类型的请求,在 RESTful 风格的应用中,就显得非常鸡肋,因此我们推荐在后端通过 (CORS,Cross-origin resource sharing) 来解决跨域问题。这种解决方案并非 SpringBoot 特有的,在传统的 SSM 框架中,就可以通过 CORS 来解决跨域问题,只不过之前我们是在 XML 文件中配置 CORS ,现在可以通过实现WebMvcConfigurer接口然后重写addCorsMappings方法解决跨域问题。

@Override
public void addCorsMappings(CorsRegistry registry) {
   
   
    registry.addMapping
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

样子的木偶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值