获取session?
这里的创建是当前事务该类中事务所绑定的SessionFactory的session,所以在同一方法中的后N个sessionFactory获取session时,只要他们的sessionFactory与当前事务所配置的sessionFactory不是同一个,会报获取不到session的异常,因为该session获取不到。或者更详细地说,由于spring维护一个ThreadLocal<Thread,Map<Object,Object>>来解决线程安全问题,那么,以当前线程作为key值,取到存有当前线程中的所需的键值对map,而其中就拥有sessionFactory和SessionHolder的键值对,而key值SessionFactory对象即为当前事务的sessionFactory,所以如果是其他sessionFactory去获取的话,会导致拿取出来的值为null。
Copyright © 广州京杭网络科技有限公司 2005-2025 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有