Spring Data
2023.0.1Spring Data 的任务是基于 Spring 的编程模型,为数据访问提供一个相似且一致的的模型,同时仍保留基础数据存储的特殊特征。
它可以使数据访问技术,关系和非关系型数据库,map-reduce 框架以及基于云的数据服务变得容易。这是一个父项目,其中包含许多特定于指定存储库的子项目。 这些项目许多公司和开发人员共同开发的。
特性
-
强大的存储库和自定义对象映射抽象
-
从存储库方法名称动态查询
-
实现提供基本属性的 domain 基类
-
支持透明审计(创建,最后更改)
-
可以集成自定义存储库代码
-
可以通过 JavaConfig 和自定义 XML 命名空间与 Spring 无缝集成
-
与 Spring MVC 控制器的高级集成
-
Experimental support for cross-store persistence
主要模块
-
Spring Data Commons - 每个 Spring Data 模块的都引用的核心 Spring 概念。
-
Spring Data JDBC - Spring Data 存储库对 JDBC 的支持。
-
Spring Data JDBC Ext - 支持标准 JDBC 的数据库特定扩展,包括对 Oracle RAC 快速连接故障转移的支持,对 AQ JMS的支持以及对使用高级数据类型的支持。
-
Spring Data JPA - Spring Data 存储库对 JPA 的支持。
-
Spring Data KeyValue - 基于
Map
的存储库和 SPI,可以轻松地为键值对存储构建 Spring Data 模块。 -
Spring Data LDAP - Spring Data 存储库对 Spring LDAP 的支持。
-
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 for Pivotal GemFire - 简单配置和访问 Pivotal GemFire,以实现高度一致,低延迟/高吞吐量的面向数据的 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- Neo4j 的基于 Spring 的对象图支持和存储库。
-
Spring Data for Apache Solr - 简单配置和访问面向搜索的 Spring 应用程序访问 Apache Solr。
-
Spring Data Vault - 在 Spring Data KeyValue 之上构建的 Vault 存储库。
模块联系
-
Spring Data JDBC Extensions - 提供对 Spring 框架中提供的 JDBC 支持的扩展。
-
Spring for Apache Hadoop - 通过提供统一的配置模型和易于使用的 API 来使用 HDFS,MapReduce,Pig 和 Hive 来简化 Apache Hadoop。
-
Spring Content - 将内容与您的 Spring 数据实体相关联,并将其存储在许多不同的 store 中,包括文件系统,S3,数据库或 Mongo 的 GridFS。
孵化模块
-
Spring Data R2DBC -对 R2DBC 的 Spring Data 支持。
版本发布
Spring Data 是一个总项目,原则上具有不同发布节奏的独立项目组成。为了方便管理项目组合,将发布一个 BOM(Bill of Materials - 参见此示例),其中包含对单个项目的依赖关系。为了避免与子项目混淆,采用火车站点名称名称而不是版本号。
名称是字母顺序(因此您可以按时间顺序对它们进行排序),其中包含著名的计算机科学家和软件开发人员的名称。当各个项目的发布积累到一定数量时,或者其中一个关键错误需要所有人使用时,将推出一个名称以 “-SRX” 结尾的 “service releases”,其中 “X” 是数字。
当前,发行版本包含以下模块:
-
Spring Data Commons
-
Spring Data JPA
-
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 for Apache Solr
-
Spring Data for Pivotal GemFire
-
Spring Data Couchbase (community module)
-
Spring Data Elasticsearch (community module)
-
Spring Data Neo4j (community module)
快速开始
文档
2023.0.1 CURRENT GA | 官方参考文档. | API Doc. | |
2022.0.7 GA | 官方参考文档. | API Doc. | |
2022.0.0 GA | 官方参考文档. | 中文参考文档. | API Doc. |
2021.2.13 GA | 官方参考文档. | API Doc. | |
2021.2.1 GA | 官方参考文档. | 中文参考文档. | API Doc. |
2021.1.6 GA | 官方参考文档. | 中文参考文档. | API Doc. |
2021.0.8 GA | 官方参考文档. | 中文参考文档. | API Doc. |
Neumann-SR9 GA | 官方参考文档. | 中文参考文档. | API Doc. |
Moore-SR12 GA | 官方参考文档. | 中文参考文档. | API Doc. |