Spring Data 概览

Spring Data的使命是为数据访问提供熟悉且一致的基于Spring的编程模型,同时仍保留底层数据存储的特殊特性。

它使数据访问技术,关系数据库和非关系数据库,map-reduce框架和基于云的数据服务变得简单易用。 这是一个伞形项目,其中包含许多特定于给定数据库的子项目。 这些项目是通过与这些激动人心的技术背后的许多公司和开发人员合作开发的。

-----------

星云解读:

众所周知,数据库大体上可以分为关系型数据库和非关系型数据库.

数据库种类繁多,为了建立一个统一访问这些数据库的方式,Spring Data 项目应运而生.

-----------

功能

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

星云解读:

-----------

需要将通用的数据库基本的增删改查进行抽象封装并建立映射

需要和Spring 完美兼容

需要支持Spring MVC

-----------

主要模块

  • Spring Data Common:  Spring 核心支撑每个Spring Data模块。
  • Spring Data JDBC:  对JDBC 提供Spring Data repository支持
  • Spring Data JDBC Ext: 支持对标准JDBC的数据库特定扩展,包括对Oracle RAC快速连接故障转移的支持,AQ JMS支持以及对使用高级数据类型的支持。
  • Spring Data JPA:  对JPA提供 Spring Data repository 支持
  • Spring Data KeyValue: 基于映射的repository(存储库)和SPI可轻松构建用于KEY-VALUE存储的Spring Data模块。
  • Spring Data LDAP: 对LDAP 提供 Spring Data repository支持
  • Spring Data MongoDB : MongoDB的基于Spring的对象文档支持和存储库。
  • 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 Apache Solr: 为您的面向搜索的Spring应用程序轻松配置和访问Apache Solr。
  • Spring Data for Pivotal GemFire : 轻松配置和访问Pivotal GemFire,实现高度一致,低延迟/高吞吐量,面向数据的Spring应用程序。

星云解读:

-----------------

目前接触比较常用和重要的的是

Spring Data Common

Spring Data JPA

Spring Data MongoDB

Spring Data Redis

-----------------

社区模块

  • Spring Data Aerospike - Spring Data module for Aerospike.

  • Spring Data ArangoDB - Spring Data module for ArangoDB.

  • Spring Data Couchbase - Spring Data module for Couchbase.

  • Spring Data Azure Cosmos DB - Spring Data module for Microsoft Azure Cosmos DB.

  • Spring Data Cloud Datastore - Spring Data module for Google Datastore.

  • Spring Data Cloud Spanner - Spring Data module for Google Spanner.

  • Spring Data DynamoDB - Spring Data module for DynamoDB.

  • Spring Data Elasticsearch - Spring Data module for Elasticsearch.

  • Spring Data Hazelcast - Provides Spring Data repository support for Hazelcast.

  • Spring Data Jest - Spring Data module for Elasticsearch based on the Jest REST client.

  • Spring Data Neo4j - Spring-based, object-graph support and repositories for Neo4j.

  • Spring Data Vault - Vault repositories built on top of Spring Data KeyValue.

相关模块

  • Spring Data JDBC Extensions - 提供对Spring Framework中提供的JDBC支持的扩展。
  • Apache Hadoop的Spring - 通过提供统一的配置模型和易于使用的API来简化Apache Hadoop,以便使用HDFS,MapReduce,Pig和Hive。
  • Spring Content - 将内容与Spring Data Entities关联,并将其存储在许多不同的商店中,包括文件系统,S3,数据库或Mongo的GridFS。

版本发布

Spring Data是一个由独立项目组成的总体项目,原则上具有不同的发布节奏。 为了管理投资组合,发布了BOM(物料清单 - 请参见此示例),其中包含针对单个项目的一组策略依赖项。 发布列车有名称而不是版本,以避免与子项目混淆。

名称是一个字母序列(因此您可以按时间顺序排序)与着名计算机科学家和软件开发人员的名称。 当单个项目的点数累积到临界质量时,或者其中一个项目中存在一个需要每个人都可用的关键错误时,发布列车将推出名称以“-SRX”结尾的“服务发布”, 其中“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)

Spring Data学习中心的更多相关文章

  1. spring data学习

    在Spring Data模块中定义依赖: <dependencies> <dependency> <groupId>org.springframework.data ...

  2. Spring Data学习(一):初识

    目录 前言 添加Spring Data 配置pom.xml 配置数据库相关信息(application.properties) 配置数据库信息 配置自动根据实体类在数据库创建表 创建User.java ...

  3. JavaEE高级-Spring Data学习笔记

    Spring Data概述 - Spring Data : Spring 的一个子项目.用于简化数据库访问,支持NoSQL 和 关系数据存储.其主要目标是使数据库的访问变得方便快捷. - Spring ...

  4. Spring Data Redis学习

    本文是从为知笔记上复制过来的,懒得调整格式了,为知笔记版本是带格式的,内容也比这里全.点这里 为知笔记版本 Spring Data Redis 学习 Version 1.8.4.Release 前言 ...

  5. 一步步学习 Spring Data 系列之JPA(一)

    引入: Spring Data是SpringSource基金会下的一个用于简化数据库访问,并支持云服务的开源框架.其主要目标是使得数据库的访问变得方便快捷,并支持map-reduce框架和云计算数据服 ...

  6. 一步步学习 Spring Data 系列之JPA(二)

    继上一篇文章对Spring Data JPA更深( )一步剖析. 上一篇只是简单的介绍了Spring Data JPA的简单使用,而往往在项目中这一点功能并不能满足我们的需求.这是当然的,在业务中查询 ...

  7. Spring Data JPA 学习记录1 -- 单向1:N关联的一些问题

    开新坑 开新坑了(笑)....公司项目使用的是Spring Data JPA做持久化框架....学习了一段时间以后发现了一点值得注意的小问题.....与大家分享 主要是针对1:N单向关联产生的一系列问 ...

  8. spring data jpa入门学习

    本文主要介绍下spring data jpa,主要聊聊为何要使用它进行开发以及它的基本使用.本文主要是入门介绍,并在最后会留下完整的demo供读者进行下载,从而了解并且开始使用spring data ...

  9. Spring Data Commons 官方文档学习

    Spring Data Commons 官方文档学习   -by LarryZeal Version 1.12.6.Release, 2017-07-27 为知笔记版本在这里,带格式. Table o ...

随机推荐

  1. 多项式 ln

    多项式 ln 定义 \(给一多项式F(x),求G(x)\equiv lnF(x)\pmod x^n\) 前置知识 \(不定积分\) \(微分\) \(多项式乘法逆\) 推式子: \[\because ...

  2. redis 清除minerd进程的方法

    redis 清除minerd进程的方法 1 修改redis配置文件 //禁止高危命令rename-command FLUSHALL ""rename-command CONFIG ...

  3. Isilon Gen6的换盘步骤

    When a drive is faulted and ready for replacement, OneFS will illuminate the Front Panel Fault LED a ...

  4. [转帖]linux基础知识大纲

    linux基础知识大纲 https://blog.csdn.net/CSDN___LYY/article/details/80810403 1.Linux操作系统概述Linux操作系统的发展过程.创始 ...

  5. Redis(七)持久化(Persistence)

    前言 前文中介绍到Redis时内存的K-V数据结构存储服务器.Redis的高性能原因之一在于其读写数据都是在内存中进行.它的架构实现方式决定了Redis的数据存储具有不可靠性,易丢失,因为RAM内存在 ...

  6. golang ----array and slice

    Go Slices: usage and internals Introduction Go's slice type provides a convenient and efficient mean ...

  7. 【linux】Too many open files 解决问题第一步【记录】

    记录一下解决linux上出现:Too many open files  的第一步骤. 做个记录,免得每次都查来查去的. 1.查看 ulimit -a 2.修改 vi /etc/security/lim ...

  8. .Net Core中文编码问题

    原文:https://www.cnblogs.com/ideacore/p/6964771.html 问题 .net core环境下,使用HttpClient执行GetStringAsync的时候,报 ...

  9. Android Studio出现Wait for build to finish解决办法

    公司用钉钉打卡,我作弊哈哈,买了个大牛助手. 刚续费包年,开发商竟然跑路了.服务器连不上,不能用了,心血来潮想说能否自己破解了.好家伙需要学的还真不少,首先还要从安卓开发学起... 刚装了Androi ...

  10. Java内功心法,创建型设计模式包括哪些

    1. 单例(Singleton) Intent 确保一个类只有一个实例,并提供该实例的全局访问点. Class Diagram 使用一个私有构造函数.一个私有静态变量以及一个公有静态函数来实现. 私有 ...