前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringBoot:模块探究之spring-boot-starters

SpringBoot:模块探究之spring-boot-starters

作者头像
栗筝i
发布2022-12-25 10:22:03
9140
发布2022-12-25 10:22:03
举报
文章被收录于专栏:迁移内容迁移内容

Spring Boot Starters 是一组方便的依赖描述符,您可以将它们包含在您的应用程序中。您可以获得所需的所有 Spring 和相关技术的一站式服务,而无需搜索示例代码和复制粘贴大量依赖项描述符。 例如,如果想使用 Spring 和 JPA 进行数据库访问,只需将 spring-boot-starter-data-jpa 这一依赖项包含在项目中就可以开始了。 ~ 本篇内容包括:Spring Boot Starters 模块介绍、Spring Boot Starters 盘点


文章目录


一、Spring Boot Starters 模块介绍

1、关于 Spring Boot Starters 模块

Spring Boot Starters 是一组方便的依赖描述符,您可以将它们包含在您的应用程序中。您可以获得所需的所有 Spring 和相关技术的一站式服务,而无需搜索示例代码和复制粘贴大量依赖项描述符。

例如,如果想使用 Spring 和 JPA 进行数据库访问,只需将 spring-boot-starter-data-jpa 这一依赖项包含在项目中就可以开始了。

2、spring-boot-starters 源码地址

spring-boot-starters 位于 spring-boot 项目中。

spring-boot-starters 在 源码地址为:https://github.com/spring-projects/spring-boot/tree/v2.1.0.RELEASE/spring-boot-project/spring-boot-starters

image-20221221194816277
image-20221221194816277

二、Spring Boot Starters 盘点

1、application starters

# 这一个表格是 Spring Boot 所有应用程序级的 Starters

Starter 名称

Starter 描述

spring-boot-starter

核心 Starter,包括自动配置、日志及 YAML 支持等

spring-boot-starter-activemq

集成 Apache ActiveMQ,基于 JMS 的消息队列

spring-boot-starter-artemis

集成 Apache Artemis,基于 JMS 的消息队列

spring-boot-starter-amqp

集成 Spring AMQP 和 Rabbit MQ 的消息队列

spring-boot-starter-aop

集成 Spring AOP 和 AspectJ 面向切面编程

spring-boot-starter-batch

集成 Spring Batch(批处理)

spring-boot-starter-cache

集成 Spring Cache(缓存)

spring-boot-starter-data-cassandra

集成 Cassandra(分布式数据库) 和 Spring Data Cassandra

spring-boot-starter-data-cassandra-reactive

集成 Cassandra(分布式数据库) 和 Spring Data Cassandra Reactive

spring-boot-starter-data-couchbase

集成 Couchbase(文档型数据库) 和 Spring Data Couchbase

spring-boot-starter-data-couchbase-reactive

集成 Couchbase(文档型数据库) 和 Spring Data Couchbase Reactive

spring-boot-starter-data-elasticsearch

集成 Elasticsearch(搜索引擎)和 Spring Data Elasticsearch

spring-boot-starter-data-solr

集成 Apache Solr(搜索引擎)结合 Spring Data Solr

spring-boot-starter-data-jdbc

集成 Spring Data JDBC

spring-boot-starter-data-jpa

集成 Spring Data JPA 结合 Hibernate

spring-boot-starter-data-ldap

集成 Spring Data LDAP

spring-boot-starter-data-mongodb

集成 MongoDB(文档型数据库)和 Spring Data MongoDB

spring-boot-starter-data-mongodb-reactive

集成 MongoDB(文档型数据库)和 Spring Data MongoDB Reactive

spring-boot-starter-data-neo4j

集成 Neo4j(图形数据库)和 Spring Data Neo4j

spring-boot-starter-data-r2dbc

集成 Spring Data R2DBC

spring-boot-starter-data-redis

集成 Redis(内存数据库)结合 Spring Data Redis 和 Lettuce 客户端

spring-boot-starter-data-redis-reactive

集成 Redis(内存数据库)结合 Spring Data Redis reactive 和 Lettuce 客户端

spring-boot-starter-data-rest

集成 Spring Data REST 暴露 Spring Data repositories 输出 REST 资源

spring-boot-starter-thymeleaf

集成 Thymeleaf 视图构建 MVC web 应用

spring-boot-starter-freemarker

集成 FreeMarker 视图构建 MVC web 应用

spring-boot-starter-groovy-templates

集成 Groovy 模板视图构建 MVC web 应用

spring-boot-starter-hateoas

集成 Spring MVC 和 Spring HATEOAS 构建超媒体 RESTful Web 应用程序

spring-boot-starter-integration

集成 Spring Integration

spring-boot-starter-jdbc

集成 JDBC 结合 HikariCP 连接池

spring-boot-starter-jersey

集成 JAX-RS 和 Jersey 构建 RESTful web 应用,是 spring-boot-starter-web 的一个替代 Starter

spring-boot-starter-jooq

集成 jOOQ 访问 SQL 数据库,是 spring-boot-starter-data-jpa 或者 spring-boot-starter-jdbc 的替代 Starter

spring-boot-starter-json

用于读写 JSON

spring-boot-starter-jta-atomikos

集成 Atomikos 实现 JTA 事务

spring-boot-starter-jta-bitronix

集成 Bitronix 实现 JTA 事务( 从 2.3.0 开始标识为 Deprecated)

spring-boot-starter-mail

集成 Java Mail 和 Spring 框架的邮件发送功能

spring-boot-starter-mustache

集成 Mustache 视图构建 web 应用

spring-boot-starter-security

集成 Spring Security

spring-boot-starter-oauth2-client

集成 Spring Security’s OAuth2/OpenID 连接客户端功能

spring-boot-starter-oauth2-resource-server

集成 Spring Security’s OAuth2 资源服务器功能

spring-boot-starter-quartz

集成 Quartz 任务调度

spring-boot-starter-rsocket

构建 RSocket 客户端和服务端

spring-boot-starter-test

集成 JUnit Jupiter, Hamcrest 和 Mockito 测试 Spring Boot 应用和类库

spring-boot-starter-validation

集成 Java Bean Validation 结合 Hibernate Validator

spring-boot-starter-web

集成 Spring MVC 构建 RESTful web 应用,使用 Tomcat 作为默认内嵌容器

spring-boot-starter-web-services

集成 Spring Web Services

spring-boot-starter-webflux

集成 Spring Reactive Web 构建 WebFlux 应用

spring-boot-starter-websocket

集成 Spring WebSocket 构建 WebSocket 应用

2、production starters

除了上面的应用程序级 starters,还有下面的生产级 Starters 能被用于线上/生产功能:

Starter 名称

Starter 描述

spring-boot-starter-actuator

集成 Spring Boot Actuator,提供生产功能以帮助监控和管理应用程序

这个意味着和任何技术、任何业务没关系,只要用了 Spring Boot 框架,上了生产环境就能使用,也不是只有生产才能使用,只是在生产环境使用更能体验它的意义。

3、technical starters

除了应用程序和生产 Starters,Spring Boot 还包括下面的技术类 Starters,用于帮助你排除或者替换指定的框架或技术:

Starter 名称

Starter 描述

spring-boot-starter-jetty

集成 Jetty 作为内嵌的 servlet 容器,可用于替代 spring-boot-starter-tomcat

spring-boot-starter-log4j2

集成 Log4j2 日志框架,可用于替代 spring-boot-starter-logging

spring-boot-starter-logging

集成 Logback 日志框架,这个也是默认的日志 Starter

spring-boot-starter-reactor-netty

集成 Netty 作为内嵌的响应式 HTTP 服务器

spring-boot-starter-tomcat

集成 Tomcat 作为内嵌的 servlet 容器,这也是默认的 servlet 容器 starter 被集成 spring-boot-starter-web 里面

spring-boot-starter-undertow

集成 Undertow 作为内嵌的 servlet 容器,可用于替代 spring-boot-starter-tomcat

这个表格的技术也很熟悉了,Spring Boot 默认内嵌 Servlet 容器为 Tomcat,如果你想换成 Jetty、Undertow 或者其他容器,又或者你想换成其他的日志框架,都在这个表格里

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-12-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、Spring Boot Starters 模块介绍
    • 1、关于 Spring Boot Starters 模块
      • 2、spring-boot-starters 源码地址
      • 二、Spring Boot Starters 盘点
        • 1、application starters
          • 2、production starters
            • 3、technical starters
            相关产品与服务
            TDSQL MySQL 版
            TDSQL MySQL 版(TDSQL for MySQL)是腾讯打造的一款分布式数据库产品,具备强一致高可用、全球部署架构、分布式水平扩展、高性能、企业级安全等特性,同时提供智能 DBA、自动化运营、监控告警等配套设施,为客户提供完整的分布式数据库解决方案。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档