Spring Data 的使命是提供一个熟悉且一致的、基于 Spring 的数据访问编程模型,同时保留底层数据存储的特殊特性。
它使得使用数据访问技术变得简单,包括关系型和非关系型数据库、Map-Reduce 框架以及基于云的数据服务。这是一个伞形项目,包含许多针对特定数据库的子项目。这些项目是由许多支持这些令人兴奋的技术的公司和开发者共同开发的。
特性
- 强大的仓库和自定义对象映射抽象
- 从仓库方法名称动态派生查询
- 提供基本属性的实现域基类
- 支持透明审计(创建时间、最后修改时间)
- 可以集成自定义仓库代码
- 通过 JavaConfig 和自定义 XML 命名空间轻松集成 Spring
- 与 Spring MVC 控制器的高级集成
- 对跨存储持久化的实验性支持
主要模块
发布列车
Spring Data 是一个伞形项目,由原则上具有不同发布节奏的独立项目组成。为了管理整个组合,会发布一个 BOM(物料清单 - 请参阅此示例),其中包含精心策划的各个项目依赖项集合。发布列车遵循 Calver 版本控制。
当前,发布列车包含以下模块
- 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 (社区模块)