🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] # 事务隔离级别 ![](https://box.kancloud.cn/08f8ebd79e0c3ddbb648278f39e70f06_822x428.png) ![](https://box.kancloud.cn/237668ce00a2797f69a66b37dc8e40a0_809x265.png) # 事务管理 ![](https://box.kancloud.cn/fd3e2d17fe6f26de35b1ccc223732932_818x437.png) 这时候我们设置了事务的隔离级别,那么我们在真正的事务管理的时候,需要考虑事务的应用场景,也就是说我们事务控制不应该在DAO层实现,应该在service层实现,并且在service层调用多个DAO,实现一个业务逻辑 具体操作如下: Hibernate提供了三种管理session的方式: 1. Session对象的生命周期与本地线程绑定(ThreadLocal) 2. Session对象的生命周期与JTA事务绑定(分布式事务管理) 3. Hibernate委托程序来管理Session的生命周期 我们之前所使用的是第三种 ,通过程序获取一个Session对象,使用它,最后session.close(); 在实际开发中我们一般使用的是前两种: 主要介绍关于本地线程绑定Session。 步骤: 1. 需要在hibernate.cfg.xml文件配置 ![](https://box.kancloud.cn/e7df29e6090d8766b6885c95ad9afd91_784x59.png) ![](https://box.kancloud.cn/99f17b6105d49fa3a6d0522238f5ab70_712x94.png) ![](https://box.kancloud.cn/73db419638a7fe341c485e02103f2dfc_689x400.png) # getCurrentSession使用时的注意事项 ![](https://box.kancloud.cn/39819696479b76361810502b114d2f44_761x539.png)