SpringBoot基础
什么是SpringBoot?
SpringBoot有哪些优点?
SpringBoot的核心注解是什么?由哪些注解组成?
SpringBoot、SpringMVC和Spring的区别
SpringBoot自动配置原理是什么?
运行SpringBoot的几种方式?
开发SpringBoot特性的几种方式?
1、什么是SpringBoot?
- 简化Spring应用的初始搭建以及开发过程,使用特定的方式来进行配置
- 创建独立的Spring引用程序main方法运行
- 嵌入的tomcat无需部署war文件
- 简化maven配置
- 自动配置Spring添加对应的功能starter自动化配置
SpringBoot来简化Spring应用开发,约定大于配置,去繁化简
2、SpringBoot有哪些优点?
- 独立运行
SpringBoot内嵌了各种servlet容器,Tomcat,Jetty等,不需要打成war包部署到容器中,Spring Boot只要打包成一个可以执行的jar包就能独立运行,所有依赖包都在一个jar包内 - 简化配置
spring-boot-starter-web启动器自动依赖其他组件,减少了maven的配置 - 自动配置
Spring Boot能根据当前类路径下的类、jar包来自动配置bean - 无代码生成和XML配置
配置过程中无代码生成,也无需XML配置文件就能完成所有配置工作,借助于注解完成。 - 避免大量的Maven导入和各种版本冲突
- 应用监控
Spring Boot提供一系列端点可以监控服务及应用,做健康检测。
3、SpringBoot的核心注解是什么?由哪些注解组成?
启动类上@SpringBootApplication是SpringBoot的核心注解
主要组合包含了以下3个注解:
@**SpringBootConfiguration**:
组合了@Configuration注解,实现配置文件的
功能。
@**EnableAutoConfiguration**:
打开自动配置的功能,也可以关闭某个自动配置
的选项,如关闭数据源自动配置功能:
@**SpringBootAppication**(exclude={
DataSourceAutoConfiguration.class })。
@**ComponentScan** :
Spring组件扫描。
4、SpringBoot、SpringMVC和Spring的区别
- Spring
Spring特征:依赖注入
所有Spring Modules不是依赖注入就是IOC控制反转 - SpringMVC
Spring MVC提供了一种分离式的方法来开发Web
应用。通过运用像DispatcherServelet,MoudIAndView和ViewResolver 等一些简单的概念,开发Web应用将会变的非常简单。 - SpringBoot
Spring和SpringMVC的问题在于需要配置大量的参数
Spring Boot通过一个自动配置和启动的项来解决这个问题
5、SpringBoot自动配置原理是什么?
- SpringBoot启动时会加载大量的自动配置类
- 需要的功能有没有在Spring Boot默写写好的自动配置类中
- 看自动配置类中配置了哪些组件,要用的组件存在其中,就不需要手动配置了
- 给容器中自动配置类添加组件的时候,会从properties类中获取某些属性。我们只需要在配置文件中指定这些属性的值即可;
xxxxAutoConfigurartion:自动配置类;给容器中添加组件
xxxxProperties:封装配置文件中相关属性;
6、运行SpringBoot的几种方式?
- 打包用命令或者放到容器中运行
- 用Maven/Gradle插件运行
- 直接执行main方法运行
7、开发SpringBoot特性的几种方式?
1. 继承spring-boot-starter-parent项目
2. 导入spring-boot-dependencies项目依赖