菜鸟在Hibernate的路上前行–验证一级缓存的存在及特性

1.1 问题

设计几个测试案例,以验证一级缓存的存在及特性。

1.2 方案

1. 用同一个Session查询同一条数据2次,如果只查询一次数据库,则验证了一级缓存的存在。
2. 用2个不同的Session,分别查询同一条数据,如果查询2次数据库,则验证了一级缓存是Session独享的。

1.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:创建项目

复制项目HibernateBase,粘贴并将项目名改为HibernateCache。

详细请参考:菜鸟在Hibernate的路上前行–使用Hibernate预定义类型配置属性和字段的映射关系

步骤二:写测试案例代码

在com.souvc.test包下创建测试类TestFirstCache,在这个测试类中分别写出方案中提到的2个测试方法,用以验证一级缓存的存在及特性,代码如下:

 

 

步骤三:测试

分别执行以上2个方法,根据控制台输出的结果,根据其SQL语句数量可以判断出查询执行的次数,进而验证一级缓存的存在及特性。

test1()执行后,控制台输出结果如下图,可以看出第二次查询并没有真正访问数据库,验证了一级缓存的存在:

 

test2()执行后,控制台输出结果如下图,可以看出第二次查询访问了数据库,验证了一级缓存是Session独享的。

 

 

 

 

 






如果您认为本教程质量不错,读后觉得收获很大,预期工资能蹭蹭蹭的往上涨,那么不妨小额赞助我一下,让我有动力继续写出高质量的教程。

发布者

souvc

souvc

搜你所想,投你所好。

《菜鸟在Hibernate的路上前行–验证一级缓存的存在及特性》有1个想法

发表评论