2 回答

TA貢獻1772條經(jīng)驗 獲得超6個贊
如果數(shù)據(jù)庫中已有演員,則必須先獲取它,然后將其添加到列表中。
@Autowired
ActorRepository actorRepository;
Optional<Actor> actorOptional = actorRepository.findById(id);
if(actorOptional.isPresent()){
movie.getActors().add(actorOptional.get());
}else{
// create new actor and add it to the list
}

TA貢獻1836條經(jīng)驗 獲得超5個贊
如果@Id
兩邊都有對象標識符 [ ],則可以使用session.saveOrUpdate
來自 Hibernate 文檔:
saveOrUpdate()
執(zhí)行以下操作:
如果該對象已在此會話中持久化,則不執(zhí)行任何操作
如果與會話關(guān)聯(lián)的另一個對象具有相同的標識符,則拋出異常
如果對象沒有標識符屬性,
save()
則如果對象的標識符具有分配給新實例化的對象的值,
save()
則它如果該對象由
<version>
或 進行版本控制<timestamp>
,并且版本屬性值與分配給新實例化的對象的值相同,save()
則否則
update()
該對象
添加回答
舉報