2 回答

TA貢獻(xiàn)1719條經(jīng)驗(yàn) 獲得超6個(gè)贊
為了查看觸發(fā)器所做的更改,我在 platDao.save(plat) 之后在服務(wù)中添加了兩行代碼:
實(shí)體管理器.flush();
EntityManager.flush() 操作可用于在提交事務(wù)之前將所有更改寫入數(shù)據(jù)庫。lush() 并不執(zhí)行實(shí)際的提交。
實(shí)體管理器.刷新(平臺(tái));
EntityManager.refresh() 操作用于從數(shù)據(jù)庫刷新對(duì)象的狀態(tài)。刷新可用于恢復(fù)更改,或者如果您的 JPA 提供程序支持緩存,則可用于刷新過時(shí)的緩存數(shù)據(jù)。有時(shí)需要查詢或查找操作刷新結(jié)果。
現(xiàn)在我的代碼看起來像這樣:
public List<Platnosc> createDocumentForInvoice(Integer fakturaId) {
AuthUser user = loginMgr.getLoggedUser();
Platnosc plat = Platnosc.builder()
// I don't set field platnoscNr here it is null
.build();
platDao.save(plat);
entityManager.flush();
entityManager.refresh(plat);
return plat;
}
添加回答
舉報(bào)