【发布时间】:2011-11-03 12:10:11
【问题描述】:
两个应用程序(A 和 B)使用休眠从数据库中检索相同的实体。应该在每个应用程序中实例化 DAO,还是应该有一个单独的应用程序 (C) 包含 DAO 的唯一实例并公开服务(例如 RMI)供 A 和 B 使用?
如果后一种情况为真,那么防止加载异常的常见做法是什么?我认为我目前的计划是使用 RMI 并为每个域对象创建一个 DTO。我唯一的保留是 A 和 B 中的实体将无法引用 C 中的实体。这是一种常见的策略吗?
可能值得一提的是,有 4 台不同的服务器分别运行 A 和 B。目前每台服务器上也都有数据库 - 出现这个问题是因为我试图集中一些东西 - 要么所有项目都有DAO 指向单个 DB 服务器或所有应用程序都指向由 C 托管的服务,该服务具有指向单个 DB 的 DAO。
【问题讨论】:
-
我假设“项目”是指“应用程序”?
-
抱歉,是的,应该是应用程序 - 我会更改它。
标签: java hibernate soa rmi dao