SpringData JPA的概念

SpringData JPA的概念

什么是SpringData?

spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问计数,包括非关系数据库、Map-Reduce 框架、云数据服务等等;另外也包含对关系数据库的访问支持。

  • SpringData JPA 是Spring提供的持久层的解决方案
  • SpringData JPA其实就是Spring对JPA操作的封装(entiyManager)
  • SpringData JPA 是对JPA操作的封装 ,如果要使用SpringDataJPA有两个条件:

    1. Spring整合JPA
    2. 需要有一个JPA的实现框架,例如Hibernate

简单来说

JPA是当时Hibernate的创始人跳槽去了SUN公司对自己当时的Hibernate的原理上,写出了这么一个JPA 是Java Persistence API 简称JPA 是一个Java官方制定的ORM标准 然后就出现很多JPA框架 然后慢慢Hibernate也慢慢完全支持JPA 。SpringData JPA 是Spring Data的其中一个子模块 也就是Spring对JPA的操作进行了封装 弱化了Hibernate,我们需要Hibernate只是需要他去实现JPA规范提供的接口和类, 并没有使用到框架本身的私有特性。然后SpringData JPA就帮我们简化对持久层的操作, 在持久层中只需要写接口就行,自动就具备CRUD + 分页 + 条件 的功能, 这个Spring Data JPA对我们的开发提供了极大的便利.


Spring Data 包含多个子项目:

  • Commons - 提供共享的基础框架,适合各个子项目使用,支持跨数据库持久化
  • Hadoop - 基于 Spring 的 Hadoop 作业配置和一个 - POJO 编程模型的 MapReduce 作业
  • Key-Value - 集成了 Redis 和 Riak ,提供多个常用场景下的简单封装
  • Document - 集成文档数据库:CouchDB 和 MongoDB 并提供基本的配置映射和资料库支持
  • Graph - 集成 Neo4j 提供强大的基于 POJO 的编程模型
  • Graph Roo AddOn - Roo support for Neo4j
  • JDBC Extensions - 支持 Oracle - RAD、高级队列和高级数据类型
  • JPA - 简化创建 JPA 数据访问层和跨存储的持久层功能
  • Mapping - 基于 Grails 的提供对象映射框架,支持不同的数据库
  • Examples - 示例程序、文档和图数据库
  • Guidance - 高级文档

使用Spring Data通常使用几个模块:
1. 支持整合JPA模块
2. 支持整合Redis模块
3. 分布式的搜索服务的支持

4. 支持整合Hadoop框架(大数据框架)

猜你喜欢

转载自blog.csdn.net/kato_op/article/details/80330223
今日推荐