hibernate 之 session操作 标签: hibernate 2016-12-14 22:13 94人阅读 评论(0)

首先声明 hibernate 一共有3种session操作,分别是
1. flush()
2. reflesh()
3. clear()



flush()操作含义:

是把 session的数据同步到数据库中,如何session中的数据和数据库中的数据不相同 则会发出对应的sql操作语句 更改数据库中的数据 使数据库中的数据和session中的数据保持一致。

在hibernate提交事务的过程中 默认调用了 此操作。
还有在HQL 或QBC查询的时候 也会先默认执行此操作,已得到数据库中的数据使最新的。
若记录ID 是由底层数据库自增实现的在调用save()则会立即发送 INSERT语句 若由hibernate 实现ID自增则不会

reflesh()操作含义:

强制使session中的数据记录和 数据库的中一样 就是把 session的中数据变的和 数据库中的数据一样

clear()操作含义:

清理session 使 session内为空

posted @ 2016-12-14 22:13  xzcl  阅读(99)  评论(0编辑  收藏  举报