什么是SpringBoot和SpringBoot的作用是什么?
Spring Boot 是所有基于 Spring 开发的项目的起点
Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。 简单来说就是SpringBoot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包一样。
SpringBoot的特点
SpringBoot所具备的特征有:
(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能可以自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要配置XML文件。
SpringBoot的优势
Spring Boot 为其开发人员提供以下优势 −
- 更容易的理解和开发 Spring 应用程序
- 可以更好的提高生产力
- 可以更好的缩短开发时间
SpringBoot自动装配(配置)
Spring Boot的自动装配机制会试图根据你所添加的依赖来自动配置你的Spring应用程序。 例如,如果你添加了 HSQLDB
依赖,而且你没有手动配置任何DataSource Bean,那么Spring Boot就会自动配置内存数据库。
你需要将 @EnableAutoConfiguration
或 @SpringBootApplication
注解添加到你的 @Configuration
类中,从而开启自动配置功能。
核心注解@SpringBootApplication
@SprintBootApplication是Spring Boot的核心注解,主要目的是开启自动配置,打开@SpringBootApplication注解的源码
(SpringbootApp.class, args) 是 Spring Boot 启动的入口方法,该方法执行了一系列的初始化操作来启动 Spring Boot 应用程序。
它是如何工作的?
Spring Boot 使用 @EnableAutoConfiguration 注解根据您添加到项目的依赖项自动配置您的应用程序。 例如,如果 MySQL 数据库在你的类路径上,但你没有配置任何数据库连接,那么 Spring Boot 会自动配置一个内存数据库。
Spring Boot 应用程序的入口点是包含 @SpringBootApplication 注解的类和 main 方法。
Spring Boot 通过使用 @ComponentScan 注解自动扫描项目中包含的所有组件。