Spring 数据
Spring Data的任务是为数据访问提供一个熟悉且一致的,基于Spring的编程模型,同时仍保留基础数据存储的特殊特征。
它使使用数据访问技术,关系和非关系数据库,map-reduce框架以及基于云的数据服务变得容易。这是一个总括项目,其中包含许多特定于给定数据库的子项目。这些项目是与这些令人兴奋的技术背后的许多公司和开发人员共同开发的。
特征
-
强大的存储库和自定义对象映射抽象
-
从存储库方法名称动态查询
-
提供基本属性的实现域基类
-
支持透明审核(已创建,最后更改)
-
集成自定义存储库代码的可能性
-
通过JavaConfig和自定义XML名称空间轻松进行Spring集成
-
与Spring MVC控制器的高级集成
-
实验性支持跨商店持久性
主要模块
-
Spring Data Commons-每个Spring Data模块的核心Spring概念。
-
Spring Data JDBC -Spring Data存储库对JDBC的支持。
-
Spring Data JDBC Ext-支持标准JDBC的数据库特定扩展,包括对Oracle RAC快速连接故障转移的支持,对AQ JMS的支持以及对使用高级数据类型的支持。
-
Spring Data JPA-对JPA的Spring Data存储库支持。
-
Spring的数据键值-
Map
基于库和SPI轻松建立键值存储一个Spring数据模块。 -
Spring Data LDAP -Spring数据存储库对Spring LDAP的支持。
-
Spring Data MongoDB - MongoDB的基于Spring的对象文档支持和存储库。
-
Spring Data Redis-轻松配置和从Spring应用程序访问Redis。
-
Spring Data REST-将Spring Data存储库导出为超媒体驱动的RESTful资源。
-
适用于Apache Cassandra的Spring数据-易于配置和访问Apache Cassandra或大规模,高可用性,面向数据的Spring应用程序。
-
用于Apache Geode的Spring数据-易于配置和访问Apache Geode,以实现高度一致,低延迟的面向数据的Spring应用程序。
-
用于Pivotal GemFire的Spring数据-可以轻松配置并访问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数据存储区-Google数据存储区的Spring数据模块。
-
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数据的Oracle NoSQL数据库SDK-适用于Oracle NoSQL数据库和Oracle NoSQL云服务的Spring数据模块。
-
用于Apache Solr的Spring数据-易于配置并可以访问面向搜索的Spring应用程序访问Apache Solr。
-
Spring Data Vault-在Spring Data KeyValue之上构建的Vault存储库。
相关模块
-
Spring Data JDBC扩展-提供对Spring框架中提供的JDBC支持的扩展。
-
适用于Apache Hadoop的Spring-通过提供统一的配置模型和易于使用的API来使用HDFS,MapReduce,Pig和Hive来简化Apache Hadoop。
-
Spring内容-将内容与Spring数据实体相关联,并将其存储在许多不同的存储中,包括文件系统,S3,数据库或Mongo的GridFS。
孵化模块
-
Spring Data R2DBC-对R2DBC的Spring Data支持。
发布火车
Spring Data是一个总括项目,由原则上具有不同发布节奏的独立项目组成。为了管理项目组合,将发布BOM(物料清单-参见此示例),其中包含对单个项目的精选依赖关系。发行列车的名称而不是版本,以避免与子项目混淆。
名称是字母顺序(因此您可以按时间顺序对它们进行排序),其中包含著名的计算机科学家和软件开发人员的名称。当各个项目的点发布积累到一定数量时,或者其中一个关键错误需要所有人使用时,发布培训将推出名称以“ -SRX”结尾的“服务版本”,其中“ X”是数字。
当前,发行版包含以下模块:
-
Spring数据共享区
-
Spring Data JPA
-
Spring数据键值
-
Spring Data LDAP
-
Spring Data MongoDB
-
Spring Data Redis
-
Spring Data REST
-
Apache Cassandra的Spring数据
-
Apache Geode的Spring数据
-
Apache Solr的Spring数据
-
Pivotal GemFire的Spring数据
-
Spring Data Couchbase(社区模块)
-
Spring Data Elasticsearch(社区模块)
-
Spring Data Neo4j(社区模块)