java data jpa_什么是Spring Data JPA?Java程序员需要了解的

Spring Data JPA(Java Persistence API),是Spring框架的主要构建块之一。如果您想使用持久数据,它也是一个强大的工具。

我经常看到实际使用它的开发人员看不到全局,他们错过了它的一些最有用的能力。因此,我想向您展示处理应用程序中持久数据的最有意义的工具。

ff42b8125a3cedd24353d41cdb5516d0.png

一个简单的CRUD存储库可以有多长时间?

在我们进入之前,我想分享一下这个框架能够做什么。我们看到以下代码片段,

fbd94e331e3d548139f4cc94db20cf7a.png图片来自于网络

该图显示了使用标准JPA实体模型处理从单个数据库表中插入,更新,删除和读取数据所需的代码量。

这些也称为标准CRUD操作。CRUD是Create,Read,Update和Delete的首字母缩写。我们还在此类中实现了一些自定义查询,这些查询使用此JPA实体执行各种数据过滤。总而言之,这是一个非常标准的代码,用于在Java中使用JPA构建持久层。

8a54829907959747a091b39e5668eed5.png

Spring Data JPA有多长?

通过在项目中包含和实现Spring Data JPA,您可以删除所有代码并将其替换为以下代码:

2e57194a2c688b2b8d3c5805070c4f8e.png图片来自于网络

我们从近50行代码下降到5行代码而不会丢失任何功能,这应该让您了解这个框架有多强大。

什么是Spring Data JPA?

在我们了解了这个库可以实现的目标之后,让我们来谈谈它是如何工作的以及它如何连接到Java Spring生态系统。

正如我之前提到的,它被认为是Spring工具套件中的核心项目之一。

f966a67455c0132ddd0ff562c172e945.png图片来自于网络

Spring Data JPA还构建并增强了JPA,后者代表Java Persistence API。

93e9c10397c92d0e41956ab77f6966e2.png图片来自于网络

Spring Data JPA功能

大多数应用程序都有某种数据存储,随着应用程序复杂性和功能集的增长,您会发现数据访问层和持久层代码也会增长。

简化数据访问层

Spring Data JPA的核心目标之一是减少代码并简化数据访问层,同时仍保留丰富且功能齐全的功能集。

智能Spring存储库接口

为了实现这一点,Spring DATA JPA允许您构建智能的Spring Repository构造型接口。这些存储库是Java接口,允许您定义数据访问协议。然后,Spring Data JPA框架检查并自动为您构建接口实现。

82581b2c46ac0ea4061da6e4f40a6a26.png

查询DSL

要生成Repository接口的实现,它需要一个Query DSL,DSL是域特定语言的首字母缩写。

查询域特定语言允许您创建Java接口方法,这些方法利用某些关键字和JPA实体属性来执行所需的工作。

审计,分页,处理本机SQL查询

Spring Data JPA还提供了一些很好的附加功能,例如审计,分页和本机SQL查询的处理。

如果需要,就会离开

如果您需要执行Spring Data提供程序无法执行的操作,那么也可以轻松地完成并编写自己的实现代码。

208f71513cbeb0996618a0da91eb0e3d.png图片来自于网络

摘要

在本文中,我们了解了Spring Data JPA的功能,展示了一个示例,说明如何通过提供相同的功能来大幅减少标准JPA类的代码量。欢迎广大朋友批评和指正,也欢迎点赞和转发。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值