2014-09-24 69 views
0

我想,當持久(也許是合併)方法執行時,他會調用數據庫中的過程,而不是使實例管理和持久化(原始操作)。爲JPA EntityManager persist()方法提供另一個操作方法

有可能嗎?

+0

當某些內容保存/保存/合併時,你想調用存儲過程嗎? – Zeus 2014-09-24 18:59:22

+0

是的,當我有東西要保存/堅持/合併。使用持久化和合並方法 – 2014-09-24 19:00:20

回答

1

對於這種情況使用休眠Interceptors or Events

如果您只想在少數情況下只打這個電話,annotate帶有自定義註釋的實體。在新創建的攔截器中使用重構,並查找保存的實體是否具有註釋。如果存在註釋,則調用所需的存儲過程。

+0

感謝您的回答,但我想在執行persist方法時使用存儲過程對實體進行INSERT或UPDATE,而不是保存實體並稍後調用存儲過程 – 2014-09-24 19:39:14

+0

@Márcio是的,使用攔截器,您實際上可以跳過保存到數據庫並調用存儲過程。你可以試試 – Zeus 2014-09-24 19:58:57

+0

我會試試。非常感謝! – 2014-09-25 15:57:49