java - JDBC和mySQL将相关数据库表转换为对象

标签 java mysql sql sql-server jdbc

我想构建一个与 mySQL 数据库连接的 Java 程序,该数据库由具有不同的多对多和一对多表连接的表组成。

该程序应该处理具有不同作者和评论的书籍。作者和书籍通过多对多的联系相关。 (正如一个作者可以写不同的书,一本书可以有不同的作者)。书籍和评论以一对多的方式连接。

在程序方面,我创建了一个专辑对象,将其作者和评论存储在单独的数组列表中。这个想法是迭代不同的专辑并获取该专辑数据,然后是其作者和评论。

问题是无法找出执行此操作的最佳方法。我想如果这是在封闭交易中进行的话最好,这样会更稳定。

由于我有限的 SQL 和 java 经验,我只能看到 3 种不同的方法来执行此任务:

  1. 我应该在程序端使用一个循环来执行此操作,该循环根据行号循环遍历每个专辑,然后使用单独的存储过程获取作者独立性,并使用另一个存储过程通过外键恢复

  2. 或者我应该将整个操作作为数据库端的存储过程吗?

  3. 或者我应该在一个大连接过程中获取所有表,然后使用一些 Java 函数迭代这个结果集?

或者这是更好的方法吗?

BR

最佳答案

我建议您使用 ORM(对象关系映射)框架,该框架可以简化从 Java 对象对 MySQL 中关系数据的访问。请参阅Hibernate

关于java - JDBC和mySQL将相关数据库表转换为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34698062/

相关文章:

java - Imap gmail 在 MAC 上使用 java SSLSocket 不响应

java - 用鼠标单击时 Eclipse 对话框打开两次

java - java.io.BufferedReader 的 J2ME 替代品?

php - 识别存储在 MySQL 中的重复标题和/或 URL(RSS 文章)

mysql - 将2个不同表中的几列乘以多个比率(mysql)

sql - 通过在oracle中固定长度后分解文本将一行拆分为多行

java - 为什么我的 ActionListener 不能为我的按钮工作?

MySQL:限制 HAVING 子句之前的结果集出现问题

java - 检查 java.util.date 和 MySql 时间戳是否属于同一天

sql - 如何获取habtm协会的arel表?