SpringData概述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Spring Data JPA

致正在路上行走的程序员:

人生只有一条路不能选择——那就是放弃的路;人生只有一条路不能拒绝——那就是成长的路

一.什么是SpringDataJPA?

SpringData项目的目的是为了简化构建基于spring框架应用的数据访问技术,包括非关系型数据库,另外还包括对关系型数据库的访问支持。对于拥有海量的项目,可以用Spring Data来简化项目的开发,就如Spring Framework对JDBC、ORM的支持一样,Spring Data会让数据的访问变得更加方便。

二.Spring Data JPA有什么咋们主要来看看Spring Data JPA 提供的接口,也是Spring Data JPA的核心概念:

1.Repository:最顶层的接口,是一个空的接口,目的是为了统一所有

Repository的类型,且能让组件扫描的时候自动识别。

2:CrudRepository :是Repository的子接口,提供CRUD的功能。

3:PagingAndSortingRepository:是CrudRepository的子接口,添加分页和排序的功能。

4:JpaRepository:是PagingAndSortingRepository的子接口,增加了一些实用的功能,比如:批量操作等。

5:JpaSpecificationExecutor:用来做负责查询的接口

6:Specification:是Spring Data JPA提供的一个查询规范,要做复杂的查询,只需围绕这个规范来设置查询条件即可

三.接下来.咋们来学习一下如何使用Spring Data JPA

1.需要先下载Spring Data JPA的发布包(需要同时下载Spring Data

Commons和Spring Data JPA两个发布包,Commons是Spring Data的公共基础包),并把相关的依赖 JAR 文件加入到CLASSPATH 中。

2.让持久层接口Dao(以OrderRepository)继JpaRepository 接口,(该

接口使用了泛型,需要为其提供两个类型,第一个为该接口处理的域对象类型,第二个为该域对象的主键类型)

3.在 Spring 配置文件中启用扫描并自动在数据库创建实体类对应的表,以及事物管理器。

class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBe an">

value="true"/>

总结:

1.申明持久层的接口,让该接口继承Jpa Repository,他不包含任何方法,当然如果有需要Spring Data 也提供了若干Jpa Repository子接口,其中定义了一些常用的增删改查,以及分页相关的方法。

2.在接口中声明需要的业务方法。Spring Data将根据给定的策略来为其生成实现代码。

3.在 Spring 配置文件中增加一行声明,让 Spring 为声明的接口创建代理对象,配置了后,Spring 初始化容器时将会扫描base-package指定的包目录及其子目录,为继承JpaRepository 或其子接口的接口创建代理对象,并将代理对象注册为Spring Bean,业务层便可以通过Spring 自动封装的特性来直接使用该对象。

相关文档
最新文档