spring 怎么管理ibatis的session,spring事务管理后 会关闭session么?在源码中怎么查看 10
1个回答
展开全部
首先要明白spring为什么要管理session?session是在什么时候使用的?以及为什么要管理?
1、spring其实管理的是sessionFactory对象,很明显这个对象是用来获取session的。在spring上下文全局中应该只有一个,这个不用担心因为默认情况下spring都是管理bean都是单例的。
2、session是线程不安全的,因此我们使用的是时候应当使用局部变量的方式使用。也就是方法体内使用
3、先看图
圈起来这段就是提交事务的,也就是说session控制着事务,那么完全可以交给spring的AOP来管理事务。
在来看个图,专门配置事务的
可能你觉得这个比较发麻,这么简单的一个方法我手动控制就好了!但是实际应用当中可能你这个业务方法还调用其他的业务方法,那时候你这个事务要怎么控制,是全部写在一个try-catch里面还是怎么处理?
追问
spring 源码中怎么查看事务完成后 session关闭?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询