Spring Boot是由Privotal团队提供的全新框架,旨在简化Spring应用搭建与开发过程。
特性
- 创建可以独立运行的Spring应用
- 内嵌Tomcat、Jetty服务器,不需要部署War文件
- 提供’starter’ POMs来简化Maven配置
- 尽可能地根据项目依赖自动配置Spring
- 提供可以直接在生产环境中使用的功能,如:性能指标、健康检查等
- 没有代码生成,也不需要XML配置文件
Starters
名称 | 说明 |
---|---|
spring-boot-starter | 核心POM,包含自动配置支持、日志、YAML |
spring-boot-starter-actuator | 提供性能指标、监测等功能 |
spring-boot-starter-amqp | 通过spring-rabbit来支持AMQP协议 |
spring-boot-starter-aop | 支持AOP编程,包括spring-aop和AspectJ |
spring-boot-starter-batch | 支持Spring Batch,包括HSQLDB |
spring-boot-starter-data-elasticsearch | 支持ElasticSearch搜索和分析引擎 |
spring-boot-starter-data-jpa | 支持JPA,包含spring-data-jpa、spring-orm和 Hibernate |
spring-boot-starter-data-mongodb | 支持MongoDB,包括spring-data-mongodb |
spring-boot-starter-data-rest | 通过spring-data-rest-webmvc支持以REST方式暴露 Spring Data仓库 |
spring-boot-starter-freemarker | 支持FreeMarker模板引擎 |
spring-boot-starter-hateoas | 通过spring-hateoas支持基于HATEOAS的RESTful Web服务 |
spring-boot-starter-jdbc | 支持使用JDBC访问数据库 |
spring-boot-starter-jta-atomikos | 通过Atomikos支持JTA分布式事务处理 |
spring-boot-starter-jta-bitronix | 通过Bitronix支持JTA分布式事务处理 |
spring-boot-starter-mail | 支持javax.mail模块 |
spring-boot-starter-mobile | 支持spring-mobile |
spring-boot-starter-redis | 支持Redis键值存储数据库,包括spring-redis |
spring-boot-starter-security | 包括spring-security |
spring-boot-starter-test | 包含常用的测试依赖,如JUnit、Hamcrest、Mockito和 spring-test |
spring-boot-starter-thymeleaf | 支持Thymeleaf模板引擎,包括与Spring的集成 |
spring-boot-starter-velocity | 支持Velocity模板引擎 |
spring-boot-starter-web | 支持Web应用开发,包含Tomcat和spring-mvc |
spring-boot-starter-websocket | 支持WebSocket开发 |
spring-boot-starter-ws | 支持Spring Web Services |
spring-boot-starter-remote-shell | 添加远程SSH shell支持 |
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作为应用服务器 |
… | … |
DevTools
Spring Boot 1.3.0增加了spring-boot-devtools,该模块主要是为了提高开发者开发Spring Boot应用的用户体验。spring-boot-devtools支持热部署,当代码有更新时,可以自动重启。