java - 如何初始化通过远程方法调用获取的 Hibernate 实体?

标签 java hibernate remoting rmi

当使用 Hibernate 调用远程服务(例如通过 RMI)从数据库加载实体列表时,您如何管理它以初始化客户端需要的所有字段和引用?

示例:客户端调用远程方法加载所有客户。对于每个客户,客户都希望初始化对客户购买商品列表的引用。

我可以想象以下解决方案:

  1. 为每个特殊查询编写一个远程方法,初始化所需的字段 (例如 Hibernate.initialize())并将域对象返回给客户端。

  2. 像 1. 但创建 DTO

  3. 将查询拆分为多个查询,例如一个给客户,一个给客户的文章,让客户自己管理结果

  4. 远程方法接受一个DetachedCriteria,它由客户端创建并由服务器执行

  5. 开发自定义“预加载模式”,即客户端明确指定要预加载哪些属性的方法。

最佳答案

我过去用过 1,效果很好。

关于java - 如何初始化通过远程方法调用获取的 Hibernate 实体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/119732/

相关文章:

java - 尽管设置较高,Jenkins PermGen 仍出错

spring - 没有可用连接时必须设置“hibernate.dialect”

c# - 使用 .Net 在网络机器上停止进程

delphi - 使用 Delphi 实现透明远程处理的最简单解决方案是什么?

java - Postgres UUID 和 Hibernate → 未找到列

c# - 方法组中泛型调用的 RealProxy Invoke Message 中的 TargetException

java - 如何在循环中以完全相同的时间间隔调用方法?

java - 在运行时修改Tomcat中的属性文件

java - 如何在 Java 中打印这个特定的金字塔?

java - 使用 JPA 映射双向一对多 Hibernate 实体