二级缓存中,发送查询时,通过什么条件判断缓存中是否已经存在了要查询的对象

二级缓存中,发送查询时,通过什么条件判断缓存中是否已经存在了要查询的对象

二级缓存中,发送查询时,通过什么条件判断缓存中是否已经存在了要查询的对象

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

你可以执行两次相同的查询呀,打印出两次查询获取的,对象的HashCode。来判断两个对象的hashcode值想不想等。如果为了更好的判断可以打开logback日志,进行查看。

例:开启二级缓存

1、第一次查询完成之后,关闭一级缓存(使用Commit提交,或者关闭Sqlsession对象)。

2,然后使用SqlSession 进行同样的语句查询,并打印出第二次的HashCode的值 和第一次对比。

如果开启了日志,可以查看只执行一次SQL语句的查询,也能看到缓存的命中率。

  • 慕莱坞4521678 提问者 #1

    不好意思,上边没有表述清楚,我的意思是:我发送查询语句时,程序通过什么条件去判断缓存中是否已存在了我当前查询语句要查询的对象,比如我用了两条查询语句查询同一个对象,一条使用Id查询,一条使用title查询,两条SQL语句不同,查询的是同一个对象,但得到的是不同的hashCode值、所以我想问程序 是通过什么条件判断对象是否已存在于缓存中

    https://img1.sycdn.imooc.com//climg/629d50f9092c11b014640842.jpg

    https://img1.sycdn.imooc.com//climg/629d50f90925982018870905.jpg

    2022-06-06 08:57:33
好帮手慕小脸 2022-06-05 18:29:43

同学你好,“一只龟”同学的回答是可以的,这里同学可参考哟~

祝学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星

相似问题

登录后可查看更多问答,登录/注册

请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师