建设银行网站功能介绍,网站建设工作目标,宝塔wordpress固定连接,做论坛网站 备案01 Mybatis中的缓存简介 缓存的好处#xff1a;只是查询才有缓存 #xff08;增删改没有缓存的#xff09;#xff0c;可以增块访问的速度 sqlsession级缓存 #xff08;一级缓存#xff09; 默认开启的 所有的操作是公用同一个SQLsession对象并且执行的是同一条SQL语句的…01 Mybatis中的缓存简介 缓存的好处只是查询才有缓存 增删改没有缓存的可以增块访问的速度 sqlsession级缓存 一级缓存 默认开启的 所有的操作是公用同一个SQLsession对象并且执行的是同一条SQL语句的时候才会走缓存 02缓存的缺点 可能存在数据的脏读 执行修改、删除、添加 默认的把缓存中数据全部清空 03问题 不同的用户访问的时候创建了不同的sqlsession对象 这个时候我们缓存的数据没有办法实现共享 04sqlsession一级缓存 使用SqlSession对象操作数据库资源时SqlSession对象会先去其缓存区查找是否有现成的符合要求的数据如果有则返回没有则按照需求进行数据库操作获取符合要求的资源并将资源返回给用户的同时在其缓存中缓存当我们使用同一个SqlSession对象操作同一个Sql资源时就可以从缓存中直接获取数据库资源数据了
05 factory的缓存二级缓存 使用的方法 [1] 在Mybatis.xml中开始二级缓存 [2] 在对应的mapper.xml文件中 [3] 关闭获得提交指定的sqlsesson对象 注意 当用户查询时会先在Factory对象自己的缓存中查看是否有现成的数据有则直接返回没有则继续查看sqlSession中是否有有则返回没有则去数据库中获取资源将资源返回的同时在SqlSession的缓存中缓存一份儿当该SqlSession对象被commit或者close时将其缓存的数据刷入到Factory中。 查询数据顺序 二级–一级—数据库—把数据保存到一级,当sqlsession关闭或者提交的时候把数据刷入到二级缓存中