差别是getCurrentSession()取得是当前线程中的session,是线程安全的,前一个不是线程安全的。请看看threadlocal这个类。

解决方案 »

  1.   

    所有的都session不是线程安全的,而SessionFactory是安全的。
    两者的区别从字面上可以理解,一个是打开新的,另一个是用现成的。
    由于session线程不安全,因此尽量避免被多个线程共享,用到时临时
    创建,使用后及时销毁,同时session也属于轻量级封装,可随意创建
    和销毁,它的特点正好和SessionFactory相反。以上,如有不对,请指出。 
      

  2.   

    getCurrentSession()是指如果内存中存在session的实例则不建立新的,若没有则建立一个新的session实例
    getSession则是直接获取一个Session实例
      

  3.   

    同意了楼上的!getCurrentSession()是一个线程对应一个session的