休眠日志显示如下:
[debug] o.h.e.t.i.TransactionImpl - begin
do stuff...
[debug] o.h.e.t.i.TransactionImpl - committing
do more stuff... inserts, updates etc...
[debug] o.h.e.j.i.JdbcCoordinatorImpl - HHH000420: Closing un-released batch
应该“这样做”时
[debug] o.h.e.t.i.TransactionImpl - begin
do stuff...
do more stuff... inserts, updates etc...
[debug] o.h.e.t.i.TransactionImpl - committing
我将整个东西包装在一个事务中,所以我不认为这是我的代码有问题。我想念什么吗?
答案 0 :(得分:0)
休眠模式具有3种状态:瞬态,持久性和分离状态。我认为从暂时状态更改为永久状态时,它将显示commit
。但是,这并不意味着事务确实已提交。只是意味着对象已由Hibernate控制并准备好提交到数据库一段时间(取决于Hibernate内部机制)。如果我错了,请纠正我。