java 类和数据库查询

标签 java database dao

有人可以解释一下解决这个问题的最佳方法吗?

假设我有三门课

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/

相关文章:

java - Java 包或源文件夹中使用的硬编码字符串/枚举列表

java - notify可以多次唤醒同一个线程吗?

ms-access - VBA-使用DAO对象的运行时错误3271

ms-access - 通过(动态)名称声明一个新的 DAO.Recordset

java - 创建一个基本的 MVP Android 应用程序

java - MIDI 14 位到 7 位转换弯音

android sqlite 双向同步 sqlite

Mysql查询小知识

Mysql根据多案例取记录

java - Spring TransactionProxyFactoryBean 未加载 dao 服务