请教各位大佬关于 JPA 的问题,有点菜,几个小时没想出来怎么做,搜索信息也没找到相关的解决方法。
两张表,一张货架区域表 Area (一端),一张货架表 Pod (多端)。
Pod 中的 area 设置 @ManyToOne 对应 areaid,设置及联 cascadeType 后,保存时,如果区域表中已存在 A 区域,货架 P1 的区域为区域 A,接着添加或者更新货架 P2 的区域同样没为 A 区域的话,数据库中会有两条 ID 不用,属性一样的区域 A 信息。
怎么才能实现不会添加第二条区域 A 的信息,直接给 P2 的区域信息设置为已有的区域 A 呢?
1
nutting 2019-07-11 08:39:51 +08:00
得以操作 Area 为准吧
|
2
liuxey 2019-07-11 10:00:17 +08:00
用 aRepository.getOne(id) 获取个代理对象,放到 Pod 对象的 a 属性中,最后 save(pod)
|
3
adzchao 2019-07-11 10:35:10 +08:00
同楼上
|
4
WeiPong OP |
5
EastLord 2019-07-25 16:16:34 +08:00
Area a = new Area();
a.setId(xxx); p.setArea(a); aRepository.save(a); |