今天遇到了一个小bug,调试了一下午终于解决了。
做统计功能的时候,先取出实体对象再累加。累加我用的是取出的对象的属性值保存数据。结果发现数据库的记录也一直在变。
开始很奇怪,我没有往数据库里更新记录,怎么会改变呢?最后终于明白,取出的对象还是持久化对象,session还没有关闭,这个时候如果给对象改变属性,hibernate就会自动同步到数据库中。这个同步的过程会在再一次触发事务的时候进行。
今天遇到了一个小bug,调试了一下午终于解决了。
做统计功能的时候,先取出实体对象再累加。累加我用的是取出的对象的属性值保存数据。结果发现数据库的记录也一直在变。
开始很奇怪,我没有往数据库里更新记录,怎么会改变呢?最后终于明白,取出的对象还是持久化对象,session还没有关闭,这个时候如果给对象改变属性,hibernate就会自动同步到数据库中。这个同步的过程会在再一次触发事务的时候进行。