Hibernate数据缓存技术
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
H i b e r n a t e缓存 是 位 于 应 用 程 序 与 物 理 数 据 源 之
间, 用 于 临时存 放复 制数 据 的 内存 区域 , 目的是 为 了减 少 应用 程序 对物 理 数据 源访 问 的次 数 , 从 而 提 高 应 用 程 序 的性能 。H i b e r n a t e在 查 询数 据 时 , 首 先 到 缓 存 中 去 查找 , 如果 找 到就 直接 使用 , 找 不到 的时 候就 会从 物 理 数据 源 中检索 , 所以 , 把 频 繁使 用 的数 据 加载 到缓 存
张雄 彪
( 湖 北 大学 数 学与计 算机 科 学学 院 , 武汉 4 3 0 0 6 2 )
摘 要: H i b e r n a t e是一种 面向 J a v a编程环境 的关 系数据 库映射工具 。本 文 系统地 分析 了 H i b e na r t e的缓存 分类 , 并描述
了一级缓存 与二级缓存 的缓存策略 , H i b e r n a t e如何 应 用缓 存查找 对 象和 对缓存 的 管理 , H i b e r n a t e查询缓存 以及性 能优
化策略 。
关键词 : H i b e r n a t e ; 缓存 ; 优 化 策 略
中图分类号 : T P 3 1 6 7 4 — 3 4 4 X( 2 0 1 3 ) 8 - 0 0 6 9 - 0 2
作者简介 : 张雄 彪( 1 9 8 7一) , 男, 硕 士研 究生 , 研 究方向为人 工智能与知识 工程 。
生, 或者 你 正处理 大 量 对 象 、 需要 对有 效 管 理 内存 时 ,
你 可 以调用 e v i c t ( ) 方法 , 从 一 级缓 存 中去 掉这 些对 象
机制。
1 H i b e r n a t e的缓存 分 类
H i b e r n a t e根 据 I D访 问 数 据 对 象 的时 候 , 首 先 从 S e s s i o n一 级缓 存 中查 ; 查不到, 如 果 配 置 了二 级 缓 存 ,
那么从二级缓存 中查 ; 如果都查不 到, 再查询数据库 ,
“ S e s s i o n F a c t o r y的缓存” , 由于 S e s s i o n F a c t o r y 对象的生
命 周期 和应 用程 序 的整个 过程 对 应 , 因此 H i b e r n a t e 二 级缓存 是进 程 范 围或 者集 群 范 围的 缓存 , 有 可 能 出现 并 发 问题 , 因此 需要 采用 适 当的并 发访 问策 略 , 该 策 略 为被 缓存 的数 据提供 了事务 隔离级 别 。第二 级缓 存是 可选 的 , 是 一 个 可 配 置 的插 件 , 在 默 认情 况 下,
S e s s i o n F a c t o r y不会启 用 这个插 件 。 2 Hi b e r n a t e对缓存 的 应用 与管 理
轻量级 J a v a E E应 用 的持 久 层 解 决 方 案 , 它 不 仅 提 供 O R M 映射 服 务 , 还 提 供 了 数 据 查 询 和数 据 获 取 的 方 法, J a v a开 发人 员 可 以方 便 地通 过 H i b e na r t e A P I 来 操 纵 数 据库 , 从 而大 幅度 提高产 品开发 的效 率 。一方 面 , H i b e r n a t e通过 对 关 系 映 射 使 得 可 以使 用 J D B C 的 场 合 都可 以用 Hi b e r n a t e替 代 ; 而另一方面 , H i b e r n a t e 的映射 开 销 所 带 来 的是 数 据 访 问 的效 率 和 性 能 的 降 低 。H i b e na r t e为 提 高 系 统 性 能 提 供 了 相 应 的 缓 存
随着 计算机 信息技术 的迅猛 发展 , 大 数 据 量 的 We b信 息 系统 成为 信 息 时代 发 展 的产 物 。 因此 , 数 据 库技 术 已成 为 计 算 机应 用 领 域 中人 们 备 受 关 注 的焦
点, H i b e r n a t e在人 们 的关 注 中应 运 而 生 。Hi b e r n a t e是
把 结果 按 照 I D放 人 到缓存 中 , 在进行 添 加 、 删除 、 更 新 数 据 的时候 , 同 时更 新 缓 存 。无 论 何 时 , 我 们 在 管 理
Hi b e r n a t e缓 存 ( Ma n a g i n g t h e c a c h e s ) 时, 当你 给 s a v e ( ) 、 u p d a t e ( ) 或s a v e O r U p d a t e ( ) 方法 传递 一 个对 象 时 ,
2 0 1 3年 8月
湖北第二 师范学院学报
J o u ma l o f Hu b e i Un i v e r s i t y o f E d u c a t i o n
Au g. 201 3
第3 0卷第 8期
Vo 1 . 3 0 N o . 8
Hi b e r n a t e数 据 缓 存 技 术
区后 , 就可 以大 大减少 应 用程 序对 物理 数据 源 的访 问 ,
或 使用 l o a d ( ) 、 g e t ( ) 、 l i s t ( ) 、 i t e r a t e ( ) 或s c r o l l ( ) 方 法 获 得一 个对 象 时 ,该 对 象 都 将 被 加 入 到 S e s s i o n的 内 部 缓存 中。 当随后 f l u s h ( ) 方 法被 调 用 时 , 对 象 的状 态 会 和数 据 库 取 得 同步 。如 果 你 不 希 望 此 同 步 操 作 发