gpt4 book ai didi

java - 在没有 Spring Boot 应用程序的情况下使用 Spring Data JPA

转载 作者:行者123 更新时间:2023-11-30 07:49:19 25 4
gpt4 key购买 nike


我想知道是否可以在没有其余 spring 框架的情况下使用 Spring Data JPA?我在另一个项目的 Spring Boot Web 应用程序中使用了 Spring Data JPA,我真的很喜欢它的易用性。

现在我和一些 friend 有一个没有服务器的桌面应用程序的小项目,我真的很想使用 Spring Data JPA,但是我没有在任何地方找到关于是否可以在没有 Beans 或 Spring 框架的其余部分的情况下使用它的信息。

这是可能的还是我应该尝试使用另一个 JPA?

最佳答案

从你的问题来看,我怀疑对 Spring + Java 持久化生态系统存在一些误解:

  • 您可以在没有 Spring Boot 的情况下使用 Spring Data JPA(您需要使用 Spring Core,因为它依赖于 Spring Data JPA),但这对我来说意义不大,因为 Spring Boot 为您提供了很多方便的魔法和语法糖。
  • Spring + Spring Boot 生态系统主要针对 Web 应用程序量身定制,但也可用于非面向 Web 的应用程序。如果您正在编写桌面应用程序,您很可能会使用一些桌面平台(例如 Eclipse RCP)。这些通常不能很好地与 Spring 的依赖注入(inject)一起使用。您仍然可以使用其他独立的 Spring + Spring Boot 功能,但是您缺少重要的 Spring + Spring Boot 主干 -> IoC 容器。
  • Spring Data JPA 不是 JPA 提供程序。它只是 JPA 标准之上的便利层,可以轻松地将 JPA ORM 插入 Spring 应用程序。它还使用 Spring Data 项目系列中的类似模式,使各种持久性存储易于 Spring 开发人员使用。
  • 如果您希望使用 JPA(独立于 Spring 生态系统的 JEE 标准 API),您绝对可以使用一些 ORM(例如 Hibernate、Toplink)使用 JPA (javax.persistence) API,完全不使用 Spring。

因此,要回答您的问题,您有两种选择:

  1. 如果您使用某种 Java 桌面框架(例如 Eclipse RCP 或基于 OSGi 的框架),则根本不要使用 Spring。您可能希望将 Toplink(来自 Eclipse 社区)或 Hibernate 与 JPA API 结合使用。
  2. 如果您正在开发需要利用 Spring IoC 的桌面应用程序,那么一定要使用没有 Web 功能的 Spring + Spring Boot + Spring Data JPA 组合。

关于java - 在没有 Spring Boot 应用程序的情况下使用 Spring Data JPA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48579209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com