Spring Boot教程

Spring Team在现有Spring框架的基础上发布了一个创新的主要框架:Spring Boot。这是一个来自Pivotal Team(Spring Team)的全新项目。Spring Boot是他们最新的创新,能够跟上不断变化的技术需求。 开发Spring Boot的主要动机是简化配置和部署spring应用程序的过程。

Spring Boot为开发提供一个具有最小功能的Spring应用程序,并提供了一个新的范例。使用Spring Boot将能够以更灵活的方式开发Spring应用程序,并且能够通过最小(或可能没有)配置Spring来专注于解决应用程序的功能需求。它使用全新的开发模型,通过避免一些繁琐的开发步骤和样板代码和配置,使Java开发非常容易。

Spring Boot可以轻松创建单独的,生产级的基于Spring的应用程序,我们只管“运行”。查看Spring平台和第三方库。大多数Spring Boot应用程序只需要很少的Spring配置。


Spring Boot的主要特点

1、创建独立的Spring应用程序

2、直接嵌入Tomcat,Jetty或Undertow(无需部署WAR文件)

3、提供“初始”的POM文件内容,以简化Maven配置

4、尽可能时自动配置Spring

5、提供生产就绪的功能,如指标,健康检查和外部化配置

6、绝对无代码生成,也不需要XML配置

7、简化基于Java的应用程序开发,单元测试和集成测试过程。

8、通过提供一些默认值来减少开发,单元测试和集成测试时间。

9、提高生产力。

10、当使用默认值时,Spring Boot有自己的看法。如果不指定详细信息,它将使用其自己的默认配置。如果想要持久化,但是没有在POM文件中指定任何东西,那么Spring Boot会将Hibernate带有HSQLDB数据库的配置作为JPA提供者。

11、为大型项目(例如嵌入式服务器,安全性,度量,健康检查,外部化配置)提供许多非常常见的非功能特性/解决方案。


Spring Boot核心和限制

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处理。


Spring Boot的优点:

  • 使用Java或Groovy开发基于Spring的应用程序非常容易。

  • 它减少了大量的开发时间并提高了生产力。

  • 它避免了编写大量的样板代码,注释和XML配置。

  • Spring Boot应用程序与其Spring生态系统(如Spring JDBC,Spring ORM,Spring Data,Spring Security等)集成非常容易。

  • 它遵循“自用默认配置”方法,以减少开发工作量。

  • 它提供嵌入式HTTP服务器,如Tomcat,Jetty等,以开发和测试Web应用程序非常容易。

  • 它提供CLI(命令行界面)工具从命令提示符,非常容易和快速地开发和测试Spring Boot(Java或Groovy)应用程序。

  • 它提供了许多插件来开发和测试Spring启动应用程序非常容易使用构建工具,如Maven和Gradle。

  • 它提供了许多插件,以便与嵌入式和内存数据库工作非常容易。


Spring Boot的限制:

将现有或传统的Spring Framework项目转换为Spring Boot应用程序是一个非常困难和耗时的过程。它仅适用于全新Spring项目。

未来的Spring项目不会有任何XML配置作为它的一部分,一切都将由项目Spring Boot处理。

官方参考指南包括所有功能的详细说明,以及常见用法的详细说明。

Spring框架结构图如下所示 -

blob.png

可以使用Spring Boot创建java -jar或更多传统war部署来启动Java应用程序。还提供了一个运行“spring scripts”的命令行工具。


相关文章

更多

最近更新

更多