openSession和getCurrentSession
是不是 openSession() session不管釋不釋放 下一個session都只能再新建一個連接對象connection? ? 而getCurrentSession 只要一提交事物 連接就自動釋放 下一個session就不用新建connection 也能使用原有的connection ?而且用getCurrentSession同時建的兩個session 使用的也是同一個connection? 求大神幫忙梳理一下 我有點亂了
是不是 openSession() session不管釋不釋放 下一個session都只能再新建一個連接對象connection? ? 而getCurrentSession 只要一提交事物 連接就自動釋放 下一個session就不用新建connection 也能使用原有的connection ?而且用getCurrentSession同時建的兩個session 使用的也是同一個connection? 求大神幫忙梳理一下 我有點亂了
2016-10-28
舉報
2016-10-28
從上課的內容來說,openSession()方法實際上是打開一個新的session,在原有session關閉的情況下會使用原有的connection對象,這時兩次輸出的hashcode是相同的。
而getCurrentSession()方法是調用原有的session,在第一個session提交事務后會自動釋放占有的資源,這時第二個session就會使用原來第一個session使用的connection,兩次輸出的hashcode相同。
當getCurrentSession()方法同時創建兩個session時,從實驗來看,用的是同一個connection,輸出的hashcode是先相同的。