首頁  >  問答  >  主體

java - 如何解決Hibernate的多執行緒問題?

我有一個頁面,要實作一個功能,觸發這個功能會同時執行兩個java函數從而觸發兩個Hibernate操作,執行該功能後,系統時不時地會發出這一個Exception:

org.hibernate.TransactionException: Transaction not successfully started

我個人覺得是因為session被前一個Hibernate操作給關了,導致後一個操作的transaction就沒辦法執行。
百度之後,試過這麼一個方法,但好像沒用:

        <property name="hibernateProperties">  
            <props>
                <prop key="hibernate.autoReconnect">true</prop>
            </props>
        </property>

所以,來請高人可以指點指點。

淡淡烟草味淡淡烟草味2712 天前533

全部回覆(1)我來回復

  • 黄舟

    黄舟2017-05-17 10:09:17

    具體看你程式碼是啥,
    你的觸發究竟是多執行緒的還是只是在同一個執行緒裡面,執行了兩個不同的方法而已
    比如,service.method1,service.method2,事務的切面在service層,那這兩個方法事務就是獨立的,

    回覆
    0
  • 取消回覆