Spring Data

Spring Data 的使命是为数据访问提供熟悉且一致的、基于 Spring 的编程模型,同时仍然保留底层数据存储的特殊特征。
它使数据访问技术、关系和非关系数据库、map-reduce 框架和基于云的数据服务的使用变得容易。这是一个伞式项目,其中包含许多特定于给定数据库的子项目。这些项目是通过与这些令人兴奋的技术背后的许多公司和开发人员合作开发的。

https://spring.io/projects/spring-data/

特征

  • 强大的存储库和自定义对象映射抽象
  • 从存储库方法名称派生动态查询
  • 提供基本属性的实现域基类
  • 支持透明审核(创建、最后更改)
  • 集成自定义存储库代码的可能性
  • 通过 JavaConfig 和自定义 XML 命名空间轻松集成 Spring
  • 与 Spring MVC 控制器的高级集成
  • 对跨存储持久性的实验支持

主要模块

  • Spring Data Commons - 支持每个 Spring Data 模块的核心 Spring 概念。
  • Spring Data JDBC - 对 JDBC 的 Spring 数据存储库支持。
  • Spring Data R2DBC - 对 R2DBC 的 Spring 数据存储库支持.
  • Spring Data JPA - 对 JPA 的 Spring 数据存储库支持。
  • Spring Data KeyValue -Map基于存储库和 SPI,可轻松构建用于键值存储的 Spring Data 模块。
  • Spring Data LDAP - Spring LDAP的 Spring 数据存储库支持。
  • Spring Data MongoDB - 基于 Spring 的 MongoDB 对象文档支持和存储库。
  • Spring Data Redis - 从 Spring 应用程序轻松配置和访问 Redis。
  • Spring Data REST - 将 Spring Data 存储库导出为超媒体驱动的 RESTful 资源.
  • Spring Data for Apache Cassandra - 轻松配置和访问 Apache Cassandra 或大规模、高度可用、面向数据的 Spring 应用程序。
  • Spring Data for Apache Geode - 轻松配置和访问 Apache Geode,以获得高度一致、低延迟、面向数据的 Spring 应用程序。

社区模块

  • Spring Data Aerospike - Aerospike 的 Spring Data 模块.
  • Spring Data ArangoDB - ArangoDB 的 Spring Data 模块.
  • Spring Data Couchbase -Couchbase 的 Spring Data 模块.
  • Spring Data Azure Cosmos DB - 适用于 Microsoft Azure Cosmos DB 的 Spring Data 模块.
  • Spring Data Cloud Datastore - Google Datastore 的 Spring Data 模块.
  • Spring Data Cloud Spanner - Google Spanner 的 Spring Data 模块.
  • Spring Data DynamoDB - DynamoDB 的 Spring Data 模块.
  • Spring Data Elasticsearch - Elasticsearch 的 Spring Data 模块.
  • Spring Data Hazelcast - 为 Hazelcast 提供 Spring Data 存储库支持。
  • Spring Data Jest - 基于 Jest REST 客户端的 Elasticsearch Spring Data 模块.
  • Spring Data Neo4j - 基于 Spring 的 Neo4j 对象图支持和存储库.
  • Oracle NoSQL Database SDK for Spring Data - 适用于 Oracle NoSQL 数据库和 Oracle NoSQL 云服务的 Spring Data 模块.
  • Spring Data Vault - 构建在Spring Data KeyValue之上的 Vault 存储库。
  • Spring Data YugabyteDB - YugabyteDB分布式 SQL 数据库的 Spring Data 模块.
发布列车

Spring Data 是一个伞式项目,由原则上具有不同发布节奏的独立项目组成。为了管理产品组合,将发布 BOM(物料清单 - 请参阅此示例),其中包含对单个项目的一组精选的依赖项。发布系列有名称,而不是版本,以避免与子项目混淆。

这些名字是按字母顺序排列的(因此您可以按时间顺序对它们进行排序),其中包含著名计算机科学家和软件开发人员的名字。当各个项目的点发布积累到临界质量时,或者其中一个项目存在需要向所有人提供的严重错误时,发布系列将推出名称以“-SRX”结尾的“服务版本”,其中“X”是一个数字。

目前,发布系列包含以下模块:

  • Spring Data Commons
  • Spring Data JPA
  • Spring Data JDBC/R2DBC
  • Spring Data KeyValue
  • Spring Data LDAP
  • Spring Data MongoDB
  • Spring Data Redis
  • Spring Data REST
  • Spring Data for Apache Cassandra
  • Spring Data for Apache Geode
  • Spring Data Couchbase (社区模块)
  • Spring Data Elasticsearch (社区模块)
  • Spring Data Neo4j (社区模块)
作者:Jeebiz  创建时间:2023-12-28 12:32
最后编辑:Jeebiz  更新时间:2023-12-28 12:58