0

有人可以解释解决这个问题的最佳方法。

假设我有三个班级

1人

2.场地

3.车辆

我有一个 DAO 方法,它需要在执行查询后从每个类返回部分或全部这些属性。

我该如何做到这一点?创建一个类 PersonVenueVehicle 并将其作为对象返回以获取实例字段值似乎是非常错误的。

我被告知数据库实体必须由类反映,如果是这种情况,它是如何在这种情况下实现的

4

1 回答 1

2

尝试 Spring-ish 解决方案。除了你的三个类之外,你还可以有 3 个 DAO 类,每个类一个。但是您有任务要执行;我不知道它是什么;我只是猜测。

假设您正在运营出租车服务;Persons 安排通过你公司的出租车在 a 接他们Venue,然后你送他们 a Vehicle。将此组合称为 a Trip,现在您需要一个Trip在数据库中管理 s 的类。创建一个名为TripService. 这应该使用 your PersonDao、 yourVenueDao和 yourVehicleDao在数据库中创建必要的人员和地点记录,并且应该进行所需的计算以选择Vehicle使用哪个。当它这样做时,它应该使用 newTripDao来持久化一个新Trip对象。但是,作为组织者,它应该创建和提供与所有 DAO 的数据库连接,并且应该自己进行提交或回滚。

如果您使用的是 Hibernate 或 JPA,则可以修改您的类。但原理是一样的。即使我的动机错误,您也可以编写一个服务来协调三个 DAO 并提供连接。如果必须,它可以使用连接本身对连接在一起的三个表执行 SELECT。

如果您编写的唯一语句是简单的 SELECT、UPDATE 和 INSERT,那么您将失去数据库的大部分好处

于 2013-04-03T22:12:42.307 回答