java jpa 还流行吗_Spring Data-JPA与JPA:有什么区别?

我看到Spring,JPA围绕存储库工作(DAO层:如果我没有错) . 所以我的意思是使用'Spring JPA Hibernate'或者直接使用'Hibernate'是多么不同?

如您所述, JPA 是规范,而 Hibernate 是该规范的特定实现(这些实现通常称为提供者) . 通过使用Hibernate,您可以将自己绑定到该提供程序,从而限制您在需要时切换到另一个选项的自由(例如,您希望使用EclipseLink或ObjectDB,因为Hibernate有一个停止开发过程的错误) .

引用 Spring Data JPA's 文件:

在相当长的一段时间内,实现应用程序的数据访问层一直很麻烦 . 必须编写太多的样板代码 . 域类是贫血的,并没有以真实的面向对象或域驱动的方式设计 . 使用这两种技术可以使开发人员在富域模型的持久性方面更加轻松 . 尽管如此,实现存储库的样板代码量仍然很高 . 因此,Spring Data的存储库抽象的目标是减少为各种持久性存储实现数据访问层的工作量 .

总而言之,它是在JPA之上添加另一层抽象,类似于定义基于标准的设计以支持Spring上下文中的持久层 . 这些定义的接口(Spring知道)提供框架使用JPA处理结果的服务 . 您可以通过Spring扫描项目并找到它来定义存储库:

因此,允许您在容器的上下文中或在容器的外部使用它 .

现在Spring究竟是什么,JPA . 是Spring,JPA在JPA上增加了一些功能(接口),仍然只是指定它还是JPA提供者?

Spring Data JPA提供了一个定义,通过引用JPA规范,使用您定义的提供程序来实现支持的存储库 .

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值