提供 GraalVM 编译支持,GraalVM 是一个编译器,实验版。
提供快速应用程序重启、实时加载和配置。
它是一个Java注解库,提供一些有用的注解,例如:
@Setter :在类或字段上注解,为字段生成setter方法
@Getter :在类或字段上注解,为字段生成getter方法
@Data: 在类上注解,生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
在使用自定义配置文件时(例如application.properties/.yml文件)提供上下文帮助和代码完成。
使用 Spring MVC 构建 Web 应用程序,包含 RESTful 应用程序。使用 Apache Tomcat 作为默认的嵌入式容器。创建 Web 应用时必选,开发时常用的一些注解也在这个包里面,例如:@Controller、@RestController、@PostMapping、@GetMapping、@Service。
使用 Spring WebFlux 和 Netty 构建响应式 web 应用程序。
为 Spring 提供 GraphQL(图状数据语言)和 GraphQL Java 支持。GraphQL 最大的优势是查询图状数据,相当于把后端当做数据库,把前端当做服务端。图状数据是一种结构,例如评论关联,加了 QL 是指图状语言。
通过Spring Data REST在REST上公开Spring数据存储库,Rest 是一种软件框架风格,有别于 MVC 架构。
提供用于管理用户会话信息的APl和实现。
在你的浏览器上浏览 Spring Data REST 存储库。
提供 REST 最高层次超媒体应用状态引擎支持,要了解 HATEOAS 就得先去了解 REST 4 个层次。这个服务说白了前端向后端发起请求,后端会返回额外的参数(links)。
促进契约优先 SOAP (Simple Object Access Protocol)开发。
用 Java 开发 RESTful Web 服务的框架,该框架提供对 JAX-RS (Java API for RESTful Web Services)的支持。
允许你使用纯 Java 编写 UI 的 Web 框架。
一个现代化的服务端 Java 模板引擎。
Java 库根据模板和更改的数据生成文本输出。
无逻辑模板,只有标签。
Groovy 模板引擎。Groovy 基于 JVM 的语言。
高度定制化权限控制和访问的控制安全框架。
Spring Boot 集成开放授权/开放 ID 客户端功能。
Spring Boot 集成开放授权资源服务器功能。
轻型目录访问协议,统一认证的解决方案,有多个平台只需要一个账号。
Okta 也是一种统一认证解决的方案。
提供定义客户端如何连接、查询数据库和数据库连接API。
用于创建数据访问层和跨存储持久化数据连通接口,用于 Spring Data 和 Hibernate。Spring Data 是一系列家族。
持久化 SQL 数据在 JDBC 计划中,用于 Spring Data。支持高级队列和数据类型。
提供反应式关系型数据库连通支持。R2DBC 是一项 API 规范计划,实现数据库厂商访问关系数据库,由 Spring 官方提出。补充,R2DBC 是反应式关系数据库连接,是一个开发规范,将反应式编程 API 引入关系型数据库。
支持客制化 SQL 的数据持久化框架,内置存储过程和高级映射。对象存储过程和 SQL 语句可以使用XML描述或注解实现。
提供Liquibase 数据库迁移和资源控制库。Liquid Database for Mac 才是 Mac 提供的液体数据库,它真的是用来管理液体数据。
提供数据库版本的迁移和控制,数据库界的 SVN/Git 版本控制。
提供 JOOQ 系列访问层。JOOQ 是一个 ORM 型持久化框架(对象关系映射),可以给你的数据库生成 Java 代码,还可以通过类型安全 SQL 流畅的构建 API。
访问 IBM DB2 数据库的 JDBC 驱动。DB2 是 IBM 开发的一种大型关系型分布式决方案数据库。
是一个开源的完全用 Java 实现的关系型数据库。MySQL 是用 C++ 实现的关系型数据库,一个道理。
提供一个快速且运行在内存中的数据库支持。H2 也是用 Java 写的关系型数据库,可以嵌入 Java 程序也可以作为一个单独的数据库。
百分之百绝对轻量的 Java 数据库引擎。别名 HSQLDB ,具有标准的 SQL 语法和 Java 接口,不适用于大型数据,适用于测试、演示的 Java 程序项目。
提供 Maria 的 JDBC和 R2DBC 驱动,MySQL 被收购后,作者新开的一个 “MySQL”。
提供给每一个 Java 应用程序微软数据库服务的 JDBC和 R2DBC 驱动(SQLServer、Azure)。
提供 MySQ 的 JDBC和 R2DBC 驱动。想想 application.yml 中 driver-class-name 填的驱动包,其它的驱动都是这么用的。
提供一个 JDBC 驱动给Oracle。
以 PostgreSQL 规范标准提供 JDBC 驱动,这个数据库跟 Java 独立不搭噶。
提供高级线程安全且包含同步、异步、反应式交互的 Redis 客户端驱动,支持集群、哨兵、流水线、自动重连。
只提供了 Redis 反应式交互驱动,不需要太多功能就用这个包。
提供 MongoDB 驱动。MongoDB 可以灵活的存储类似 JSON 那样的数据,相较 Redis 查询起来更像持久化在本地的关系型数据库,非要比较性能肯定比不过 Redis,新出了一个 RedisJson 比 MongoDB 快很多倍。
提供异步流处理非阻塞的 MongoDB 驱动。
提供 Cassandra 驱动和服务,Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。
提供 Cassandra 服务,是一个免费开源的分布式 NoSQL 高扩展和高性能的数据库管理系统。
提供 Cassandra 服务,以反应式方式访问 Cassandra NoSQL 数据库。
提供 Couchbase 服务,内存优先的分布式开发 NoSQL 数据库。
提供 Couchbase 服务,以反应式方式访问 Couchbase NoSQL 数据库。
开源NoSQL数据库,存储由节点组成的图形结构的数据,通过关系连接。
数据管理平台,提供实时、一致的云架构访问数据。
增加了对企业集成模式的支持。支持轻量级消息传递,并支持通过声明式适配器与外部系统集成。
RabbitMQ 是一个实现了高级消息队列的代理软件。
Kafka 是一种高吞吐量的分布式发布订阅消息系统。
使用Apache Kafka Streams构建流处理应用程序。
提供 ActiveMQ JMS 支持。JMS(Java Message Service)是一个 Java 平台面向消息中间件的 API,用来在两个程序或分布式系统中发送消息。
它是 ActiveMQ 的最新版。
提供构建简单网络协议和套接应用服务。
带有 Spring 消息和 Netty 的应用程序。Netty 是由 JBOSS 提供的 Java 开源框架,提供异步、事件驱动的网络应用程序框架和工具,用于快速开发高性能、高可靠的网络服务器和客户端程序。
Camel 能够在各种领域语言定义路由和中间规则。
连接到 Solace PubSub+ 进行高级事件发布、订阅。
Spring Batch 是一个批量处理应用框架,不是调度框架,需要和调度框架合作完成批处理任务。
使用 Hibernate 验证程序进行Bean验证。
使用 Java Mail 和 Spring 框架中的 JavaMailSender 发送 email。
Quartz 是一个调度框架,用它完成调度工作。
缓存抽象概念,提供与缓存相关的操作,例如更新缓存内容的能力,但不提供实际的数据存储。
Picocli 是一个强大轻量的命令行接口,用于构建命令行应用程序。
支持内置(或自定义)端点,允许您监视和管理应用程序,如应用程序运行状况、指标、会话等。
用于监控管理的软件,能够将 Actuator 中的信息进行界面展示,也可以监控所有 Spring Boot 应用的健康状况,提供实时报警功能。
应用程序作为 Spring Boot Admin Client 向 Server 注册。先搭建 Server ,再给项目搭建 Client 并注册到 Server 中。
将 Datadog 发布到 Micrometer 服务指标数据。Datadog 针对云的监控服务,通过 SaaS 的数据分析平台提供对服务器、数据库、工具和服务的监控。Micrometer 微测度量指标,可实现各种监控系统。
将 Influx 发布到 Micrometer 微测度量指标服务。Influx 是一个开源的时序型数据库,常用于存储系统监控数据,IoT 行业的实时数据等场景。IoT 指物联网,通过各种信息传感器等设备采集信息。
将 Graphite 发布到 Micrometer 微测度量指标服务。Graphite 是一个采集网站实时信息并进行统计的开源项目,可以采集多种网站服务允许状态。
将 New Relic 发布到 Micrometer 微测度量指标服务。New Relic 是一个很强大的服务器性能监控工具,专注于 SaaS 和 App 性能管理业务。
Prometheus 是一个开源的监控解决方案,用于收集和聚合指标作为时间序列数据,Promeheus 中的每一个项目都是一个指标时间,并带有它发生的时间戳。
可以通过 Spring Colud Sleuth 的日志进行分布式跟踪。
Wavefront 这是一个基于SaaS的指标监测和分析平台,可视化、查询和告警整个堆栈中的数据。
使用已安装的 Zipkin 和 Spring Cloud Sleuth Zipkin 进行分布式跟踪。
Spring REST Docs 可以帮你记录 RESTful 服务,同事还能生成标准的接口文档。
提供轻量级的公共数据实例测试容器,可以运行在一个 Docker 容器中。
提供契约测试服务,支持微服务、云契约应用。
用于基于 HTTP/消息传递 的通信的存根运行程序。允许从RestDocs测试创建WireMock存根。RestDocs 可以生成 API 文档。WireMock 可模拟后端服务用于 Web 服务测试,WireMock 会创建一个 HTTP 服务运行 Web 服务以便测试。
为在单元测试中运行 LDAP 服务器提供了一种平台无关的方式。LDAP 是一种存储方式,即轻量级目录存取协议。
为在单元测试中运行MongoDB提供了一种平台无关的方式。
非特定 Spring Cloud 特性,Cloud Native是一种应用程序开发风格,鼓励在持续交付和价值驱动开发领域开发方式。
通过函数促进业务逻辑的实现,并支持跨无服务器提供商的统一编程模型,以及独立运行(本地或PaaS)的能力。
允许用户使用 Spring Cloud 开发和运行短期的微服务。在本地、云中和 Spring 云数据流(Spring Cloud Data Flow)上运行它们。
构建 Spring Boot 应用程序的框架,该应用程序实现了开放式 Service Broker APl,它可以为运行在云计算原生平台(如 Cloud Foundry 、 Kubernetes 和 OpenShift )中的应用程序提供服务。
Cloud Foundry 是业界第一个开源 PassS 云平台,开发人员能够在几秒钟内进行应用程序部署和扩展。
Kubernetes 是一个开源的用于管理云平台多个主机上容器化的应用,目的是让部署容器化应用更加简单和高效。
OpenShift 开发者和操作友好的Kubernetes发行版。
连接到 Spring Cloud 配置服务器以获取应用程序配置的客户端。
通过Git、SVN或HashiCorp Vault对配置进行集中管理。
为分布式系统中的外部化配置提供客户端支持。使用 HashiCorp 的 Vault,可以在所有环境中管理应用程序的外部机密属性。
在应用程序中启用和配置公共模式,并使用基于 Apache Zookeeper 的组件构建大型分布式系统。提供的模式包括服务发现和配置。Zookeeper 是一个分布式应用程序协调服务。
启用和配置应用程序中的常见模式,并使用 Hashicorp 的 Consor 构建大型分布式系统。提供的模式包括服务发现、分布式配置和控制总线。Hashicorp 的 Consor 是一个多云平台,中国用不了企业版。
一种基于REST的服务,用于定位服务,以实现中间层服务器的负载平衡和故障切换。
Spring Cloud Netflix Eureka 服务器。Eureka 是 Netflix 开发的服务发现框架,本身基于 REST 服务用于定位 AWS 域的中间层服务,以达到负载均很和中间层服务故障转移目的。Spring Cloud 把它集成在 Spring Cloud Netflix 里面。
提供 Zookeeper 服务发现。
提供 Cloud Foundry 服务发现。
提供 Hashicorp Consult 服务发现。