java - 如何在hibernate中创建数据并添加到表3而不向表1和表2添加数据

标签 java sql hibernate object relationship

我是 Hibernate 新手,无法找到解决我所遇到情况的方法。这是一种多对多关系,但唯一的区别是我希望数据仅插入表 3,而不是表 1 和表 2。

表 1 和表 2 已包含所有数据。

当前要求:

表 1 包含用户 ID、名字、姓氏(已存在) 表2有文档id、文档名称、文档内容(已存在) 表3应该有用户id和文档id 表 1 和表 2 均已预填充所有数据。 现在,如果用户查看文档,我想在第三个表中创建一个条目,而不在表 1 和表 2 中保留或更新。 我们希望维护用户查看的文档的数据,这样即使用户注销并重新登录,我们也只能向他显示未读的文档。 在这种情况下 Hibernate 的最佳用途是什么?

最佳答案

您不需要更新人员或文档表。如果您配置正确,Hibernate 能够将条目添加到您的第三个表(连接表)。 您只需使用 @ManyToMany 注释集合,并确保您正在使用数据库中的实体,而不是创建新实体:

  • 从数据库加载人员
  • 从数据库加载文档
  • 将文档放入人员列表中
  • 保存人员实体

请参见此处:http://www.mkyong.com/hibernate/hibernate-many-to-many-relationship-example-annotation/一个很好的演练

关于java - 如何在hibernate中创建数据并添加到表3而不向表1和表2添加数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36727437/

相关文章:

java - 在 Activemq 中的同一连接中创建消费者和临时队列?

c++ - 如何在 SQLite 中转换 UNION 的结果?

sql - 如何使用 MongoDB 构建递归结构

java - 要使用的 Hibernate 属性或配置文件

java - 错误 : <identifier> expected in java hadoop

java - 为什么我不能用鼠标画圆圈?

java - 为什么C++和Java都没有原生字符串,只有一个类?

sql - 如何在 SQL 中查询到特定值的累积总和

java - 如何在 hibernate hbm.xml 中定义 char(2) 列?

java - 多对一子类外键