java - 将 Jersey 与 hibernate DAO 一起使用的正确方法是什么?

标签 java hibernate jersey

我正在使用 hibernate 开发 Jersey 应用程序,但我不知道在不产生困惑代码的情况下使用这些技术的正确方法。

我刚刚创建了一个名为 DataProvider 的类。它是一个抽象类,它获取通用的 POJO 并执行诸如保存、列表、更新、删除listAll。然后,我为扩展 DataProvider 的每个表创建了 DAO 类。这些 DAO 在 JSONService 类中调用,该类通过 Jersey API 提供 JSON 服务。

有人知道什么是正确的方法吗?

最佳答案

很快,请执行以下操作:

  1. 创建并实现包含 id 的基本数据库对象。所有其他数据库实体必须扩展 BaseDbObject (JPA Ineritance)。该解决方案将让您充分利用泛型的美丽和简单性。
  2. 使用基本对象及其层次结构(JPA 以及使用 Hibernate 实现的所有内容)创建用于 CRUD 操作的数据访问对象 (DAO)。
  3. 创建一个服务,以在业务流程方面使用基本对象进行操作。它必须使用 DAO 来保存对象的状态(EJB、Spring)。
  4. 为 REST API(JAX-RS、Jersey)创建端点并通过 DI 将其与服务连接。还支持实体的 XML 或 JSON 序列化。例如 jackson 。

您可以找到这样做的好例子here 。如果您想改进数据访问层,请使用 AppFuse实现。

关于java - 将 Jersey 与 hibernate DAO 一起使用的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21835181/

相关文章:

java - 我的谷歌电子表格脚本只运行一个函数。我编写的脚本错误吗?

java - Jersey:如何将 InjectableProvider 与 @Context 注释一起使用?

java - 从字符串中搜索文本并提取其他内容

Java 持久实体最佳实践

java - lubuntu错误编译代码

java - 学习 Hibernate 的好书或在线资源

java - 升级我的 Spring WebFlow 项目以使用 Maven 和 Hibernate4。现在获取 NoSuchMethodException : org. hibernate.cfg.Configuration.addAnnotatedClass

java - 是否可以使用带有 JPA 的 Spring MVC 仅更新实体上的属性子集?

java - 从 EntityManager 返回部分实体

java - 如何将其他模块中的类导入Jersey?