什么是Spring Data?

简介: Spring Data 的委托是为数据访问提供熟悉且符合 Spring 的编程模型,同时仍保留着相关数据存储的特​​殊特征。

Spring Data 的委托是为数据访问提供熟悉且符合 Spring 的编程模型,同时仍保留着相关数据存储的特​​殊特征。

它使使用数据访问技术、关系和非关系数据库、map-reduce 框架和基于云的数据服务变得容易。这是一个伞形项目,其中包含许多特定于给定数据库的子项目。这些项目是通过与这些令人兴奋的技术背后的许多公司和开发商合作开发的。
特征
强大的存储库自状语从句:定义对象映射抽象艺术

从存储库方法名称派生的动态查询

提供基本属性的实现域基类

支持透明审计(创建、最后更改)

可以集成自定义存储库代码

通过 JavaConfig 和自定义 XML 特有的一个简单集成 Spring

与 Spring MVC 控制器的高级集成

跨店持久化实验支持

主要模块
Spring Data Commons - 支撑每个Spring Data模块的核心Spring概念。

Spring Data JDBC - 对 JDBC 的 Spring Data 存储库支持。

Spring Data JDBC Ext - 支持标准 JDBC 的数据库特定扩展,包括支持 Oracle RAC 快速连接故障转移、AQ JMS 支持和使用高级数据类型的支持。

Spring Data JPA - 对 JPA 的 Spring Data 存储库支持。

Spring Data KeyValue -Map基于存储库和SPI,可构建用于键值存储的Spring Data模块。

春季数据LDAP - 春季数据存储的支持春季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 - 为您的高度一致性、低延迟/高吞吐量、数据的 Spring 应用程序简单配置和访问 Pivotal GemFire。
社区模块
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 的 Oracle NoSQL 数据库 SDK - 适用于 Oracle NoSQL 数据库和 Oracle NoSQL 云服务的 Spring Data 模块。

Spring Data for Apache Solr - 为深入搜索的 Spring 应用程序轻松配置和访问 Apache Solr。

Spring Data Vault - 在 Spring Data KeyValue 以外的 Vault 存储库中建立。

相关模块
Spring Data JDBC Extensions - 为Spring Framework中提供的JDBC支持提供扩展。

Spring for Apache Hadoop——通过提供统一的配置模型和使用的API来简化Apache Hadoop,以使用HDFS、MapReduce、Pig和Hive。

Spring 内容 - 将内容与您的 Spring 数据实体相关联,将其存储在许多不同的存储中,包括文件系统、S3、数据库或 Mongo 的 GridFS。

发布模块
Spring Data R2DBC - R2DBC的Spring Data支持。

相关文章
|
7月前
|
NoSQL Java 数据库连接
《深入理解Spring》Spring Data——数据访问的统一抽象与极致简化
Spring Data通过Repository抽象和方法名派生查询,简化数据访问层开发,告别冗余CRUD代码。支持JPA、MongoDB、Redis等多种存储,统一编程模型,提升开发效率与架构灵活性,是Java开发者必备利器。(238字)
|
7月前
|
存储 Java 关系型数据库
Spring Boot中Spring Data JPA的常用注解
Spring Data JPA通过注解简化数据库操作,实现实体与表的映射。常用注解包括:`@Entity`、`@Table`定义表结构;`@Id`、`@GeneratedValue`配置主键策略;`@Column`、`@Transient`控制字段映射;`@OneToOne`、`@OneToMany`等处理关联关系;`@Enumerated`、`@NamedQuery`支持枚举与命名查询。合理使用可提升开发效率与代码可维护性。(238字)
682 1
存储 JSON Java
915 0
|
8月前
|
SQL Java 数据库连接
Spring Data JPA 技术深度解析与应用指南
本文档全面介绍 Spring Data JPA 的核心概念、技术原理和实际应用。作为 Spring 生态系统中数据访问层的关键组件,Spring Data JPA 极大简化了 Java 持久层开发。本文将深入探讨其架构设计、核心接口、查询派生机制、事务管理以及与 Spring 框架的集成方式,并通过实际示例展示如何高效地使用这一技术。本文档约1500字,适合有一定 Spring 和 JPA 基础的开发者阅读。
815 0
|
10月前
|
NoSQL Java Redis
Redis基本数据类型及Spring Data Redis应用
Redis 是开源高性能键值对数据库,支持 String、Hash、List、Set、Sorted Set 等数据结构,适用于缓存、消息队列、排行榜等场景。具备高性能、原子操作及丰富功能,是分布式系统核心组件。
781 2
|
消息中间件 缓存 NoSQL
基于Spring Data Redis与RabbitMQ实现字符串缓存和计数功能(数据同步)
总的来说,借助Spring Data Redis和RabbitMQ,我们可以轻松实现字符串缓存和计数的功能。而关键的部分不过是一些"厨房的套路",一旦你掌握了这些套路,那么你就像厨师一样可以准备出一道道饕餮美食了。通过这种方式促进数据处理效率无疑将大大提高我们的生产力。
373 32
|
NoSQL 安全 Java
深入理解 RedisConnectionFactory:Spring Data Redis 的核心组件
在 Spring Data Redis 中,`RedisConnectionFactory` 是核心组件,负责创建和管理与 Redis 的连接。它支持单机、集群及哨兵等多种模式,为上层组件(如 `RedisTemplate`)提供连接抽象。Spring 提供了 Lettuce 和 Jedis 两种主要实现,其中 Lettuce 因其线程安全和高性能特性被广泛推荐。通过手动配置或 Spring Boot 自动化配置,开发者可轻松集成 Redis,提升应用性能与扩展性。本文深入解析其作用、实现方式及常见问题解决方法,助你高效使用 Redis。
1336 4
|
SQL Java 编译器
深入理解 Spring Data JPA 的导入与使用:以 UserRepository为例
本文深入解析了 Spring Data JPA 中 `UserRepository` 的导入与使用。通过示例代码,详细说明了为何需要导入 `User` 实体类、`JpaRepository` 接口及 `@Repository` 注解。这些导入语句分别用于定义操作实体、提供数据库交互方法和标识数据访问组件。文章还探讨了未导入时的编译问题,并展示了实际应用场景,如用户保存、查询与删除操作。合理使用导入语句,可让代码更简洁高效,充分发挥 Spring Data JPA 的优势。
774 0
|
存储 NoSQL Java
使用Java和Spring Data构建数据访问层
本文介绍了如何使用 Java 和 Spring Data 构建数据访问层的完整过程。通过创建实体类、存储库接口、服务类和控制器类,实现了对数据库的基本操作。这种方法不仅简化了数据访问层的开发,还提高了代码的可维护性和可读性。通过合理使用 Spring Data 提供的功能,可以大幅提升开发效率。
429 21
|
存储 Java API
如何使用 Java 记录简化 Spring Data 中的数据实体
如何使用 Java 记录简化 Spring Data 中的数据实体
270 9