SpringBoot框架知识点总结

SpringBoot简化了Spring的使用,提供快速开发工具,如内嵌服务器、自动配置和启动器。它与SpringCloud区别在于,SpringBoot是基础框架,SpringCloud是微服务解决方案。文章还介绍了SpringBoot的定时任务实现、打包方式、配置读取、启动流程、异步调用以及支持的日志框架。
摘要由CSDN通过智能技术生成

1·什么是SpringBoot

SpringBoot是Spring开源组织下的子项目 是Spring组件一站式解决方案主要简化了使用Spring的难度 简省了繁重的配置 提供了各种启动器 使开发者能快速上手。

2·为什么要用Spring

快速开发,整合,配置简化,内嵌服务器

3·SpringBoot和SpringCloud的区别

SpringBoot是快速开发的Spring框架,SpringClound是完整的微服务的框架,SpringCloud依赖于SpringBoot

4·SpringBoot有哪些优点

1·容易上手,提升开发效率,为Spring开发提供一个更快,更简单的开发框架。

2·开箱即用,原理繁琐配置。

3·提供了一系列大型项目通用的非业务性功能,例如:内嵌服务器、安全管理、运行数据监 控、运行状况检查和外部化配置等。

4·SpringBoot就是使得代码,配置,部署变得简单

5·SpringBoot的核心注解 由哪几个组件组成

启动类上的注解是@SpringBootApplication是SpringBoot的核心注解 主要包含了以下三个注解

@SpringBootConfiguration组合了@Configration注解 实现了配置文件的功能

@EnableAutoConfiguration打开自动配置的功能

@ComponentScan Spring的组件扫描

6·Spring Boot 需要独立的容器运行吗?

置了 Tomcat/ Jetty 等容器。所以不需要

7·Spring Boot 中如何实现定时任务

  • 在 Spring Boot 中使用定时任务主要有两种不同的方式,一个就是使用 Spring 中的 @Scheduled 注解,另一-个则是使用第三方框架 Quartz。

  • 使用 Spring 中的 @Scheduled 的方式主要通过 @Scheduled 注解来实现。

8·SpringBoot如何实现打包

  • 进入项目目录在控制台输入mvn clean package,clean是清空已存在的项目包,package进行打 包

  • 或者点击左边选项栏中的Mavne,先点击clean在点击package

9·什么是YAML

YAML 是一种可读的数据序列化语言,它通常用于配置文件。

10·YAML配置的优势在哪里

配置有序 支持数组,数组中的元素可以是基本数据类型或者对象 简洁方便

11·Spring Boot 有哪几种读取配置的方式

使用@Value注解加载单个属性值 使用@ConfigurationProperties注解可以加载一组属性的值,针对于要加载的属性过多的情况,比@Value注解更加简洁

12·开启SpringBoot特性有哪几种方式

继承spring-boot-starter-parent项目 导入spring-boot-dependencies项目依赖

13·什么是Spring Boot Starter

Starters可以理解为启动器,它包含了一系列可以集成到应用里面的依赖包,可以一站式集成 Spring 和其他技术,而不需要到处找示例代码和依赖包。Spring Boot Starter的工作原理是:Spring Boot 在启动时扫描项目所依赖的JAR包,寻找包含spring.factories文件的JAR包,根据spring.factories配置加载AutoConfigure类,根据 @Conditional注解的条件,进行自动配置并将Bean注入Spring Context

14·Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?

Spring Boot 支持 Java Util Logging, Log4j2, Logback 作为日志框架,如果使用 Starters 启动器,Spring Boot 将使用 Logback 作为默认日志框架,推荐的日志框架是Log4j2。

15 ·运行 Spring Boot 有哪几种方式?

用命令打包或者放到容器中运行 用 Maven 插件运行 直接执行 main 方法运行

16·SpringBoot的启动流程

SpringBoot程序都有一个主入口,也就是main方法,main里面调用SpringApplication.run()启动整个spring-boot程序,该方法所在类需要使用@SpringBootApplication注解,以及@ImportResource注解(if need),@SpringBootApplication包括三个注解

@SpringConfiguration:这个注解表示是一个配置类而且这个注解是唯一的

@EnableAutoConfiguration 会扫描jar包下的META-INF/spring.factory在文件下的指定的所有包的配置类根据条件判断加载

@ComponentScan 包扫描如果没有指定basePackage就会从注解类当前包和子包下进行扫描

SpringApplication.run方法

17· Async异步调用方法

  • 在SpringBoot中使用异步调用是很简单的,只需要在方法上使用@Async注解即可实现方法的异步 调用。 注意:需要在启动类加入@EnableAsync使异步调用@Async注解生效。

18·Spring Boot 有哪几种读取配置的方式?

  • Spring Boot 可以通过 @PropertySource,@Value,@Environment, @ConfigurationPropertie注 解来绑定变量

19·SpringBoot的自动配置原理是什么

主要是Spring Boot的启动类上的核心注解SpringBootApplication注解主配置类,有了这个主配置 类启动时就会为SpringBoot开启一个@EnableAutoConfiguration注解自动配置功能。 有了这个EnableAutoConfiguration的话就会: 从配置文件META_INF/Spring.factories加载可能用到的自动配置类 去重,并将exclude和excludeName属性携带的类排除 过滤,将满足条件(@Conditional)的自动配置类返回

20.SpringBoot支持什么前端模板

thymeleaf,freemarker,jsp,官方不推荐JSP会有限制

21.Spring Boot 中的 starter 到底是什么 ?

首先,这个 Starter 并非什么新的技术点,基本上还是基于 Spring 已有功能来实现的。首先它提 供了一个自动化配置类,一般命名为 XXXAutoConfiguration ,在这个配置类中通过条件注解来 决定一个配置是否生效(条件注解就是 Spring 中原本就有的),然后它还会提供一系列的默认配 置,也允许开发者根据实际情况自定义相关配置,然后通过类型安全的属性(spring.factories)注入 将这些配置属性注入进来,新注入的属性会代替掉默认属性。正因为如此,很多第三方框架,我们 只需要引入依赖就可以直接使用了。当然,开发者也可以自定义 Starte

22.spring-boot-starter-parent 有什么用 ?

我们都知道,新创建一个 Spring Boot 项目,默认都是有 parent 的,这个 parent 就是 springboot-starter-parent ,spring-boot-starter-parent 主要有如下作用: 定义了 Java 编译版本为 1.8 。 使用 UTF-8 格式编码。 继承自 spring-boot-dependencies,这个里边定义了依赖的版本,也正是因为继承了这个依 赖,所以我们在写依赖时才不需要写版本号。 执行打包操作的配置。 自动化的资源过滤。 自动化的插件配置。 针对 application.properties 和 application.yml 的资源过滤,包括通过 profile 定义的不同 环境的配置文件,例如 application-dev.properties 和 application-dev.yml。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值