本文共 376 字,大约阅读时间需要 1 分钟。
hibernateTemplte 只是实现了单个sql语句的 事务, 它只是在在sava()或其他操作前加上session.beginTransaction(),在sava()后 ts.commit() 然后try catch {rollback()}。
所以他只能自动提交一条sql语句,无法实现service层的执行多条sql的事务。所以,即使使用hibernateTemplte ,也要在xml中配置事务,此时,配置文件中的事务,不受ts.commit() 的影响。
个人建议还是使用getSessionFactory(),然后做一个父类sessionFactory,spring注入这个父类,其他类extends 这个父类,就可以直接 this.getSessionFactory()拿到getSessionFactory,不需要每个类都注入。
转载地址:http://dlsza.baihongyu.com/