SpringBoot有哪些优势?
简化配置:
SpringBoot是对Spring的进一步封装,基于注解开发,舍弃了笨重的XML,确实需要配置的使用yml或者properties进行简要配置。【auto-configuration自动化配置,改下默认值即可】
产品级独立运行:
每一个工程都可以打成一个jar包,其中内置了Tomcat或其他Servet容器【可以指定内置什么Servet容器】,可以独立运行,这是和微服务理念【独立可部署】最为契合的一点。
强大的场景启动器:
每一个特定场景下的需求都封装成了一个starter【有大量的自动化配置auto-configuration】,只要导入这个starter就有了这个场景所需要的一切。其中包括针对这个场景的自动化配置,依赖信息。
一个SpringBoot工程的主要组成部分
在使用SpringBoot时,我们可以通过starter引入各个特点功能所需要的自动配置类和所需依赖;通过@EnableXxx注解启用某种功能;通过Yml或者properties文件进行配置。每一个SpringBoot程序都必须提供一个主启动类。
版本:2.2.X用的是spring 5,加了很多JDK1.8新特性。
https://docs.spring.io/spring-boot/docs/2.3.0.RELEASE/reference/html/
创建项目:
方式一:Maven工程
先创建Maven工程,然后引入SpringBoot环境。
配了spring-boot-starter-web就相当于配置了spring mvc,配spring mvc的时候必须配置annotation-dirver,也不用配了。
<build> spring boot能不能自己跑起来,全靠build。
@SpringBootApplication 主程序类。
由很多注解组合而成。
@SpingBootConfiguration: SpringBoot的配置类
标注在某个类上,表示这是一个Spring Boot的配置类。
@Configuration:配置类上标注这个注解。配置类对应---配置文件。配置类也是容器中的一个组件@Component。
@EnableAutoConfiguration:开启自动配置功能;
以前需要配置的东西,SpringBoot帮我们自动配置;@EnableAutoConfiguration告诉SpringBoot开启自动配置的功能;这样自动配置的功能才能生效。
@AutoConfiguartionPackage:自动配置包。用@Import(AutoConfigurationPackages.Registrar.class)
Spring的底层注解@Import,给容器中导入一个组件。导入的组件由AutoConfigurationPackages.Registrar.class指定。
将主配置类(@SpringBootApplication标注的类)的所有包及下面的所有子包里面的所有组件扫描到Spring容器中。
方式二;Spring starter project
使用Spring插件创建工程,主启动类,测试类,pom.xml都会子哦的呢给我们创建好,但是创建过程必须联网。
20200525