我們有一個困難的情況。在Spring中使用JPA EntityManager和Hibernate會話與共享事務管理器
- 有一個大型項目,它使用休眠特性,所以不能退出休眠。
- 我們要將Activiti流程引擎添加到嵌入模式的項目中,並使用JPA擴展(僅適用於EntityManager)
- 某些實體不應存在於JPA持久單元中,因爲activiti文檔說所有實體都必須有@Id並且不能使用@ IdClass/@ EmbeddedId,所以我們必須從持久單元中排除這些實體
- 我們希望爲EntityManager和Session使用一個共享事務管理器。此外,數據源是相同的(甚至是共享的)
- 一切都是春天!
所有這些努力都是爲了讓Activiti能夠使用EntityManager作爲其JPA擴展,同時讓現有的依賴hibernate的代碼繼續工作。