解答Hibernate二级缓存疑问

开发 后端
这里介绍Hibernate二级缓存策略,是针对于ID查询的缓存策略,对于条件查询则毫无作用。为此,Hibernate提供了针对条件查询的Query Cache。

学习Hibernate时,经常会遇到Hibernate二级缓存问题,这里将介绍Hibernate二级缓存问题的解决方法。

一.Hibernate二级缓存策略的一般过程如下:

1.条件查询的时候,总是发出一条select * from table_name where …. (选择所有字段)这样的SQL语句查询数据库,一次获得所有的数据对象。

2.把获得的所有数据对象根据ID放入到第二级缓存中。

3.当Hibernate根据ID访问数据对象的时候,首先从Session一级缓存中查;查不到,如果配置了二级缓存,那么从二级缓存中查;查不到,再查询数据库,把结果按照ID放入到缓存。

4.删除、更新、增加数据的时候,同时更新缓存。

Hibernate二级缓存策略,是针对于ID查询的缓存策略,对于条件查询则毫无作用。为此,Hibernate提供了针对条件查询的Query Cache。

二.什么样的数据适合存放到Hibernate二级缓存中?
1 很少被修改的数据
2 不是很重要的数据,允许出现偶尔并发的数据
3 不会被并发访问的数据
4 参考数据,指的是供应用参考的常量数据,它的实例数目有限,它的实例会被许多其他类的实例引用,实例极少或者从来不会被修改。

三.不适合存放到第二级缓存的数据?
1 经常被修改的数据
2 财务数据,绝对不允许出现并发
3 与其他应用共享的数据。

【编辑推荐】

  1. Hibernate3.1简单描述
  2. Hibernate save基础简介
  3. 浅析Hibernate 3二级缓存基础
  4. Hibernate流行架构浅析
  5. Hibernate update浅谈
责任编辑:佚名 来源: IT168
相关推荐

2009-06-18 15:24:35

Hibernate二级

2009-09-21 14:59:31

Hibernate二级

2009-09-24 11:04:56

Hibernate二级

2009-09-21 13:31:10

Hibernate 3

2009-09-23 09:37:07

Hibernate缓存

2009-06-10 15:00:58

Hibernate二级配置

2013-09-08 23:30:56

EF Code Fir架构设计MVC架构设计

2009-08-13 18:12:12

Hibernate 3

2009-09-21 17:17:11

Hibernate二级

2024-12-03 14:38:07

CaffeineRedis二级缓存

2022-12-02 12:01:30

Spring缓存生命周期

2022-03-01 18:03:06

Spring缓存循环依赖

2022-01-12 07:48:19

缓存Spring 循环

2015-06-11 10:12:26

Android图片加载缓存

2023-04-27 08:18:10

MyBatis缓存存储

2019-08-21 14:34:41

2012-02-08 11:01:53

HibernateJava

2009-09-22 11:24:07

Hibernate查询

2009-06-18 14:51:12

Hibernate缓存Hibernate

2009-09-23 17:03:08

Hibernate S
点赞
收藏

51CTO技术栈公众号