mybatis的一级缓存是什么级别的缓存,mybatis二级缓存是哪个范围的缓存 -

  mybatis的一级缓存是什么级别的缓存,mybatis二级缓存是哪个范围的缓存 ?

  如何解决写爬虫IP受阻的问题?立即使用。

  操作环境:Windows7系统,MyBatis版本3.5.6,Dell G3电脑。

  mybatis一级缓存和二级缓存的区别:

  Mybatis的一级缓存引用SQLSession,一级缓存的作用域是SQlSession,Mabits默认打开一级缓存。在同一个SqlSession中,执行同一个SQL查询时;第一次您将查询数据库并将其写入缓存,第二次您将直接从缓存中获取它。当执行SQL时,如果两个查询之间有添加、删除和更改,SQLSession的缓存将被清除。

  每次查询都会先去缓存。如果找不到,就去数据库查询,然后把结果写入缓存。Mybatis内部缓存使用的是HashMap,关键是hashcode statementId sql语句。值是由查询结果集映射的java对象。SqlSession在执行insert、update、delete等操作后,提交后会清空SQLSession缓存。

  2) L2缓存L2缓存是映射器级的,默认情况下Mybatis没有打开L2缓存。第一次调用mapper下的SQL查询用户信息,查询到的信息会存储在mapper对应的二级缓存区。当第二次调用命名空间中的映射器映射文件时,将使用相同的sql查询用户信息,并将从相应的L2缓存中获取结果。

  

  这就是我的巴蒂斯L1缓存和L2缓存之间的差异的细节。更多详情请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: