有人可以解释一下解决这个问题的最佳方法吗?
假设我有三门课
1.人
2.地点
3.车辆
我有一个 DAO 方法,需要在执行查询后从每个类返回部分或全部这些属性。
我该如何实现这个目标?创建一个类 PersonVenueVehicle 并将其作为对象返回以获取实例字段值似乎是非常错误的。
我被告知数据库实体必须由类反射(reflect),如果是这种情况,在这种情况下如何实现
最佳答案
尝试类似 Spring 的解决方案。除了三个类(class)之外,您还可以拥有 3 个 DAO 类(class),每个类(class)一个。但你有任务要执行;我不知道那是什么;我只是猜测。
假设您正在经营出租车服务; 人员
安排通过公司出租车在地点
接他们,然后您给他们发送车辆
。将此组合称为 Trip
,现在您需要一个在数据库中管理 Trip
的类。创建一个名为 TripService
的类。这应该使用您的 PersonDao
、您的 VenueDao
和您的 VehicleDao
在数据库中创建必要的人员和 field 记录,并且应该进行计算需要选择要使用的车辆
。当它发生时,它应该使用新的 TripDao
来保存新的 Trip
对象。但是,作为组织者,它应该创建并向所有 DAO 提供数据库连接,并且应该自行执行提交或回滚。
如果您使用 Hibernate 或 JPA,您的类可能会被修改。但原理是一样的。即使我的动机是错误的,您也可以编写一个协调三个 DAO 并提供连接的服务。如果必须的话,它可以使用连接本身对连接在一起的三个表执行 SELECT。
如果您编写的唯一语句是简单的 SELECT、UPDATE 和 INSERT,那么您将失去数据库的大部分优势
关于java 类和数据库查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15798807/