Spring Boot - 启动器
概述
Spring Boot 启动器是一组预定义的依赖描述符,我们可以将其包含在 Spring Boot 项目中。每个启动器都专注于特定功能领域(例如,Web、数据、安全、测试),并提供一组相关的依赖项。通过将启动器添加到您的项目中,您可以自动获得所有必需的库,而无需查找文档或示例代码。要使用启动器,只需将相应的依赖项添加到项目的构建配置(Maven 或 Gradle)中即可。例如,在项目的 POM.xml(Maven 配置文件)中,您可以添加一个启动器,例如:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
<version>2.0.4.RELEASE</version>
</dependency>
Spring Boot Starter Parent
spring-boot-starter-parent 是 Spring Boot 提供的一个项目启动器。其主要目的是为您的应用程序提供默认配置并设置完整的依赖项树。当您在项目的 pom.xml 中将其用作父级时,您将继承许多有用的功能。声明启动器父级后,您可以直接从中提取任何依赖项。例如,如果您正在构建一个 Web 项目,则添加 spring-boot-starter-web 而无需指定版本。
一些有用的 Spring Boot 启动器
核心启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter |
用于核心启动器,包括自动配置支持、日志记录和 YAML。 |
2 |
spring-boot-starter-parent |
它为应用程序提供默认配置。将其包含在 POM.xml 中后,您无需指定构件的版本号。 |
WEB/MVC 启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-tomcat |
它使用 Tomcat 作为嵌入式 servlet 容器。spring-boot-starter-web 使用的默认 servlet 容器启动器。 |
2 |
spring-boot-starter-undertow |
它使用 Undertow 作为嵌入式 servlet 容器。spring-boot-starter-tomcat 的替代方案。 |
3 |
spring-boot-starter-jetty |
它使用 Jetty 作为嵌入式 servlet 容器。spring-boot-starter-tomcat 的替代方案。 |
4 |
spring-boot-starter-thymeleaf |
它用于使用 Thymeleaf 视图构建 MVC Web 应用程序。 |
5 |
spring-boot-starter-web |
它用于构建 Web 应用程序,包括使用 Spring MVC 的 RESTful 应用程序。它使用 Tomcat 作为默认嵌入式容器。 |
6 |
spring-boot-starter-web-services |
它用于 Spring Web Services。 |
7 |
spring-boot-starter-jersey |
它用于使用 JAX-RS 和 Jersey 构建 RESTful Web 应用程序。spring-boot-starter-web 的替代方案。 |
8 |
spring-boot-starter-websocket |
它用于构建 WebSocket 应用程序。它使用 Spring Framework 的 WebSocket 支持。 |
9 |
spring-boot-starter-mustache |
它用于使用 Mustache 视图构建 MVC Web 应用程序。 |
10 |
spring-boot-starter-groovy-templates |
它用于使用 Groovy 模板视图构建 MVC Web 应用程序。 |
11 |
spring-boot-starter-freemarker |
它用于使用 FreeMarker 视图构建 MVC Web 应用程序。 |
数据启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-data-couchbase |
它用于 Couchbase 文档型数据库和 Spring Data Couchbase。 |
2 |
spring-boot-starter-data-gemfire |
它用于 GemFire 分布式数据存储和 Spring Data GemFire。 |
3 |
spring-boot-starter-data-cassandra |
它用于 Cassandra 分布式数据库和 Spring Data Cassandra。 |
4 |
spring-boot-starter-data-redis |
它用于 Redis 键值数据存储,带有 Spring Data Redis 和 Jedis 客户端。 |
5 |
spring-boot-starter-data-jpa |
它用于带有 Hibernate 的 Spring Data JPA。 |
6 |
spring-boot-starter-data-neo4j |
它用于 Neo4j 图数据库和 Spring Data Neo4j。 |
7 |
spring-boot-starter-data-ldap |
它用于 Spring Data LDAP。 |
8 |
spring-boot-starter-data-elasticsearch |
它用于 Elasticsearch 搜索和分析引擎以及 Spring Data Elasticsearch。 |
9 |
spring-boot-starter-data-solr |
它用于带有 Spring Data Solr 的 Apache Solr 搜索平台。 |
10 |
spring-boot-starter-data-mongodb |
它用于 MongoDB 文档型数据库和 Spring Data MongoDB。 |
11 |
spring-boot-starter-jooq |
它使用 jOOQ 访问 SQL 数据库。spring-boot-starter-data-jpa 或 spring-boot-starter-jdbc 的替代方案。 |
12 |
spring-boot-starter-data-rest |
它用于使用 Spring Data REST 通过 REST 公开 Spring Data 存储库。 |
JMS 启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-artemis |
它用于使用 Apache Artemis 进行 JMS 消息传递。 |
2 |
spring-boot-starter-amqp |
它用于 Spring AMQP 和 Rabbit MQ。 |
3 |
spring-boot-starter-activemq |
它用于使用 Apache ActiveMQ 进行 JMS 消息传递。 |
AOP 启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-aop |
它用于使用 Spring AOP 和 AspectJ 进行面向方面编程。 |
2 |
spring-boot-starter-jta-atomikos |
它用于使用 Atomikos 进行 JTA 事务。 |
JTA 启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-jta-narayana |
它用于 Spring Boot Narayana JTA 启动器。 |
2 |
spring-boot-starter-jta-bitronix |
它用于使用 Bitronix 进行 JTA 事务。 |
集成启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-integration |
它用于 Spring Integration。 |
日志记录启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-logging |
它用于使用 Logback 进行日志记录。默认日志记录启动器。 |
2 |
spring-boot-starter-log4j2 |
它用于 Log4j2 进行日志记录。spring-boot-starter-logging 的替代方案。 |
其他启动器
序号 |
名称 |
描述 |
1 |
spring-boot-starter-mail |
它用于支持 Java Mail 和 Spring Framework 的电子邮件发送。 |
2 |
spring-boot-starter-social-facebook |
它用于 Spring 社交媒体 Facebook。 |
3 |
spring-boot-starter-social-linkedin |
它用于 Spring 社交媒体 LinkedIn。 |
4 |
spring-boot-starter-social-twitter |
它用于 Spring 社交媒体 Twitter。 |
5 |
spring-boot-starter-batch |
它用于 Spring Batch。 |
6 |
spring-boot-starter-cache |
它用于 Spring Framework 的缓存支持。 |
7 |
spring-boot-starter-cloud-connectors |
它用于 Spring Cloud Connectors,简化了与 Cloud Foundry 和 Heroku 等云平台上的服务的连接。 |
8 |
spring-boot-starter-security |
它用于 Spring Security。 |
9 |
spring-boot-starter-actuator |
它用于 Spring Boot 的 Actuator,提供可用于监视和管理应用程序的生产就绪功能。 |