java - 如何解決Hibernate的多線程問題?
問題描述
我有一個(gè)頁面,要實(shí)現(xiàn)一個(gè)功能,觸發(fā)這個(gè)功能會(huì)同時(shí)執(zhí)行兩個(gè)java函數(shù)從而觸發(fā)兩個(gè)Hibernate操作,執(zhí)行該功能后,系統(tǒng)時(shí)不時(shí)地會(huì)發(fā)出這一個(gè)Exception:
org.hibernate.TransactionException: Transaction not successfully started
我個(gè)人覺得是因?yàn)閟ession被前一個(gè)Hibernate操作給關(guān)了,導(dǎo)致后一個(gè)操作的transaction就沒法執(zhí)行。百度之后,試過這么一個(gè)方法,但是好像沒有用:
<property name='hibernateProperties'> <props><prop key='hibernate.autoReconnect'>true</prop> </props></property>
所以,來請(qǐng)高人可以指點(diǎn)指點(diǎn)。
問題解答
回答1:具體看你代碼是啥,你的觸發(fā)究竟是多線程的還是只是在同一個(gè)線程里面,執(zhí)行了兩個(gè)不同的方法而已比如,service.method1,service.method2,事務(wù)的切面在service層,那這兩個(gè)方法事務(wù)就是獨(dú)立的,
相關(guān)文章:
1. javascript - vue提示語法錯(cuò)誤,請(qǐng)問錯(cuò)誤在哪?2. 淺談vue生命周期共有幾個(gè)階段?分別是什么?3. index.php錯(cuò)誤,求指點(diǎn)4. java - web端百度網(wǎng)盤的一個(gè)操作為什么要分兩次請(qǐng)求服務(wù)器, 有什么好處嗎5. javascript - vue.js如何遞歸渲染組件.6. css - 移動(dòng)端 oppo 手機(jī)之 Border-radius7. css - 關(guān)于偽類背景問題8. jquery中關(guān)于html和text有什么區(qū)別?9. html - JavaScript的Dom操作如何改變子元素的文本內(nèi)容10. javascript - 為什么我的animation-fill-mode 設(shè)置不生效
