Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
Spring Boot的特点
1. 创建独立的Spring应用程序
2. 直接嵌入Tomcat,Jetty或Undertow,无需部署WAR文件
3. 提供推荐的基础POM文件来简化Apache Maven配置
4. 尽可能的根据项目依赖来自动配置Spring框架
5. 提供生产就绪型功能,如指标,运行状况检查和外部配置
6. 绝对没有代码生成和对XML没有要求配置
Spring Boot的优点
spring boot可以支持开发人员快速的开发出restful风格的微服务架构;
spring boot自动化确实方便,做微服务再合适不过了,单一jar包部署和管理都非常方便。只要系统架构设计合理,大型项目也能用,加上nginx负载均衡,轻松实现横向扩展;
spring boot要解决的问题, 精简配置是一方面, 另外一方面是如何方便的让spring生态圈和其他工具链整合(比如Redis,email,elasticsearch)。
Spring Boot运行环境
Spring Boot最近(2017-08-18)版本Spring Boot 1.5.6运行环境,Spring官方建议使用JDK1.8
NameServlet VersionJava Version
Tomcat 83.1Java 7+
Tomcat 73.0Java 6+
Jetty 93.1Java 7+
Jetty 83.0Java 6+
Undertow 1.13.1Java 7+
Spring Boot使开发独立的,产品级别的基于Spring的应用变得非常简单,你只需"just run"。 为Spring平台及第三方库提供开箱即用的设置,这样就可以有条不紊地开始。多数Spring Boot应用需要很少的Spring配置。
使用Spring Boot创建Java应用,使用Spring启动或采用传统的war部署方式。Spring Boot提供了一个运行"Spring脚本"的命令行工具。
Spring Boot推荐基础POM文件
名称说明
spring-boot-starter核心 POM,包含自动配置支持、日志库和对 YAML 配置文件的支持。
spring-boot-starter-amqp通过 spring-rabbit 支持 AMQP。
spring-boot-starter-aop包含 spring-aop 和 AspectJ 来支持面向切面编程(AOP)。
spring-boot-starter-batch支持 Spring Batch,包含 HSQLDB。
spring-boot-starter-data-jpa包含 spring-data-jpa、spring-orm 和 Hibernate 来支持 JPA。
spring-boot-starter-data-mongodb包含 spring-data-mongodb 来支持 MongoDB。
spring-boot-starter-data-rest通过 spring-data-rest-webmvc 支持以 REST 方式暴露 Spring Data 仓库。
spring-boot-starter-jdbc支持使用 JDBC 访问数据库。
spring-boot-starter-security包含 spring-security。
spring-boot-starter-test包含常用的测试所需的依赖,如 JUnit、Hamcrest、Mockito 和 spring-test 等。
spring-boot-starter-velocity支持使用 Velocity 作为模板引擎。
spring-boot-starter-web支持 Web 应用开发,包含 Tomcat 和 spring-mvc。
spring-boot-starter-websocket支持使用 Tomcat 开发 WebSocket 应用。
spring-boot-starter-ws支持 Spring Web Services。
spring-boot-starter-actuator添加适用于生产环境的功能,如性能指标和监测等功能。
spring-boot-starter-remote-shell添加远程 SSH 支持。
spring-boot-starter-jetty使用 Jetty 而不是默认的 Tomcat 作为应用服务器。
spring-boot-starter-log4j添加 Log4j 的支持。
spring-boot-starter-logging使用 Spring Boot 默认的日志框架 Logback。
spring-boot-starter-tomcat使用 Spring Boot 默认的 Tomcat 作为应用服务器。
在下一篇中我们讲述一下如何利用《Spring Boot搭建框架》,在本篇文章中我们已经介绍了Spring Boot相关内容及其常用插件。
推荐阅读