什么是Spring Boot
[TOC]
这将是一个更专注于引入 Spring Boot 的简短帖子, 我们将讨论 “ 什么是Spring Boot ”? 以及Spring Boot如何帮助构建基于Java的企业应用程序。
作为Java开发人员,我们很可能直接或间接地使用基于 Spring Framework 的应用程序。 Spring 有许多方法可以配置它的行为,它提供了使用基于 XML 的配置或使用 Annotations 的选项, JavaConfig 正在成为新的基于Spring的应用程序的事实上的标准。虽然这些选项看起来非常好,但对于大型企业应用程序涉及数百个模块和复杂的业务规则,这些配置可能变得非常复杂。以下是大型应用程序可以为图片带来的一些复杂问题
所有上述问题或多或少都与确保在开发团队开始处理实际任务之前我们拥有一切有关。现在让我们谈谈我们用来处理任何 基于Spring的应用程序的 另一个用例,假设我们想创建一个基于Web的应用程序,这些是我们大多数人定期做的最常见的步骤
此列表可以根据我们的应用程序类型显着增长
所有上述步骤对我们来说都很明显,但它们给开发团队增加了很多开销,而不是专注于解决实际的业务问题,将消耗初始时间以确保一切都在正确的位置开始工作。将Spring Boot视为可以自动为我们完成这些初始任务的工具,确保团队可以快速开始解决实际业务问题而不是花时间在初始配置和设置。
Spring Boot提供了开箱即用的以下功能
使用Spring Boot,可以轻松管理和处理介绍部分中突出显示的问题。。我们不需要在升级期间手动搜索兼容的jar,Spring Boot将确保我们的应用程序升级到正确的版本(这称为在应用程序上工作,最小化)
让我们看一下 pom.xml Web应用程序的示例,以了解示例Spring Boot配置
只需密切关注 <packaging> 标签,Spring Boot就可以灵活地运行我们的应用程序, jar 而不是强制我们使用 war 所需的包装类型。
只需仔细检查配置,你就不会找到所有Spring依赖项的任何条目(比如web MVC, core, AOP, ORM, Validation API 等),你可能已经注意到类似的条目 spring-boot-starter-* ,这就是Spring Boot依赖管理过程。我们已添加 spring-boot-starter-web 到我们 pom.xml 和Spring Boot将为 Spring MVC 应用程序提取所有必需的依赖项(不再需要手动配置)。
自动配置是Spring Boot的另一个有趣功能,这就是Spring Boot团队说它有意见的原因。
你是否记得在Servlet容器(Tomcat等)上部署应用程序的过程,每次我们进行这些小的更改并需要将它们部署到应用服务器来测试我们的更改?
Spring Boot为嵌入式Servlet容器提供支持,我们不再需要在app服务器上部署我们的应用程序(这可以使用标准main方法轻松运行),但同时我们可以使用http://在浏览器上访问我们的应用程序<主机>:<端口>
Spring-boot-starter-web entry 我们 pom.xml 将为我们的Web应用程序提供嵌入式servlet容器,Apache Tomcat是Spring Boot提供的默认servlet容器,但是,Spring启动提供了使用其他servlet容器的方法(我们必须为此添加所需的启动器)。