Hibernate 休眠:通过更改复合id主键的一部分插入新行?
我试图向数据库中插入新行,但无法让Hibernate识别必须插入的对象。我有一个赞助商表、一个课程表和一个赞助商课程表,这是两者的交叉点。赞助商课程的主键是类SponsorCoursePK的复合id,它包含两个整数:赞助商的主键和课程的主键。SponsorCoursePK实现equals()&hashcode() 我的目标是课程表的深度副本,包括其所有赞助商课程行Hibernate 休眠:通过更改复合id主键的一部分插入新行?,hibernate,composite-id,Hibernate,Composite Id,我试图向数据库中插入新行,但无法让Hibernate识别必须插入的对象。我有一个赞助商表、一个课程表和一个赞助商课程表,这是两者的交叉点。赞助商课程的主键是类SponsorCoursePK的复合id,它包含两个整数:赞助商的主键和课程的主键。SponsorCoursePK实现equals()&hashcode() 我的目标是课程表的深度副本,包括其所有赞助商课程行 我首先要求Hibernate提供一个相关课程的赞助商列表 使用现有课程行 接下来,我创建一个新的Course对象并将其提交到数据库
- 我首先要求Hibernate提供一个相关课程的赞助商列表 使用现有课程行
- 接下来,我创建一个新的Course对象并将其提交到数据库。(用于 由于遗留原因,课程对象不由Hibernate管理)
- 接下来,我迭代Hibernate为旧课程提供的赞助商课程列表,并将赞助商课程主键中保存courseid的部分从旧courseid更改为新创建课程的id
- 接下来,我调用saveOrUpdate尝试让Hibernate创建新行李>
多谢各位。很明显,我对该框架还不熟悉。我会尝试以下方法: