是不是 openSession() session不管释不释放 下一个session都只能再新建一个连接对象connection? 而getCurrentSession 只要一提交事物 连接就自动释放 下一个session就不用新建connection 也能使用原有的connection 而且用getCurrentSession同时建的两个session 使用的也是同一个connection? 求大神帮忙梳理一下 我有点乱了
从上课的内容来说,openSession()方法实际上是打开一个新的session,在原有session关闭的情况下会使用原有的connection对象,这时两次输出的hashcode是相同的。
而getCurrentSession()方法是调用原有的session,在第一个session提交事务后会自动释放占有的资源,这时第二个session就会使用原来第一个session使用的connection,两次输出的hashcode相同。
当getCurrentSession()方法同时创建两个session时,从实验来看,用的是同一个connection,输出的hashcode是先相同的。