什么是Spring Boot
Spring Boot 的目的是提供一组工具,以便快速构建容易配置的 Spring 应用程序。
Spring Boot不是编写应用程序的框架,它可以帮助我们以最少的配置或零配置开发和构建,打包和部署应用程序。
它不是应用程序服务器。但是它是提供应用程序服务器功能的嵌入式servlet容器,而不是Spring Boot本身。
类似地,Spring Boot不实现任何企业Java规范,例如JPA或JMS。 例如,Spring Boot不实现JPA,但它通过为JPA实现(例如Hibernate)自动配置适当的bean来支持JPA。
最后,Spring Boot不使用任何形式的代码生成来完成它的功能。它是利用Spring 4的条件配置功能,以及Maven和Gradle提供的传递依赖关系解析,以在Spring应用程序上下文中自动配置bean。
简而言之,Spring Boot它的核心就是Spring。
为什么要使用Spring Boot
假设要在Spring Framework中开发一个Hello World
应用程序,因为只有一个项目专用于开发Hello World
功能:它就是控制器。其余的是任何使用Spring开发的Web应用程序的通用模板文件。但是如果所有Spring Web应用程序都需要它,为什么都要在每个项目中都必须提供它? 以下是新项目需要Spring Boot的理由了。
- 简化基于Java的应用程序开发,单元测试和集成测试过程。
- 通过提供一些默认值来减少开发,单元测试和集成测试时间。
- 提高生产力。
当使用默认值时,Spring Boot有自己的看法。如果不指定详细信息,它将使用其自己的默认配置。如果想要持久化,但是没有在POM文件中指定任何东西,那么Spring Boot会将Hibernate带有
HSQLDB
数据库的配置作为JPA提供者。为大型项目(例如嵌入式服务器,安全性,度量,健康检查,外部化配置)提供许多非常常见的非功能特性/解决方案。
核心和限制
Spring Boot不是编写应用程序的框架,它可以帮助我们以最少的配置或零配置开发和构建,打包和部署应用程序。
它不是应用程序服务器。但是它是提供应用程序服务器功能的嵌入式servlet容器,而不是Spring Boot本身。
类似地,Spring Boot不实现任何企业Java规范,例如JPA或JMS。 例如,Spring Boot不实现JPA,但它通过为JPA实现(例如Hibernate
)自动配置适当的bean
来支持JPA。
最后,Spring Boot不使用任何形式的代码生成来完成它的功能。它是利用Spring 4的条件配置功能,以及Maven和Gradle提供的传递依赖关系解析,以在Spring应用程序上下文中自动配置bean
。
简而言之,Spring Boot它的核心就是Spring。
未来的Spring项目不会有任何XML配置作为它的一部分,一切都将由项目Spring Boot处理。