持久化上下文作用 :
1、 Hibernate 可以进行自动的脏检查和事务迟写。
2、 Hibernate 可以用持久化上下文作为一级高速缓存。
3、 Hibernate 可以保证 java 对象同一性的范围。
4、 Hibernate 可以把持久化上下文扩展到跨整个对话。
(a) 控制持久化上下文高速缓存
1、 保持持久化上下文的大小为必须的最小尺寸。
2、 可以调用
session.evict(object)
从持久化上下文中托管持久化实例。 Session.clear() 从持久化上下文托管所有持久化实例。
3、 利用
session.setReadOnly(object,true)
禁用特定对象的脏检查,设定为只读后持久化上下文将不再维持快照。
(b) 同步持久化上下文
持久化上下文与数据库同步发生时间点:
1、 当 Hibernate API 中的 transaction 被提交时。
2、 执行查询之前。
3、 应用程序显示调用 session.fluse()