myBatis day2-2

一,增删改

1,先写一个实体类(Supplier)

 

2,建一个mapper接口(SupplierMapper)

 

3,建一个mapper接口实现类(SupplierMapper.xml)

 

4,建一个测试类(SupplierMapperText)

 

 

二,一级缓存和二级缓存

1,

一级缓存(Local Cache) 一级缓存是MyBatis默认开启的缓存机制。它是指在同一个SqlSession内部的多次查询中,如果查询条件相同,则只会发送一次SQL语句到数据库,并将查询结果缓存起来。当再次执行相同的查询时,直接从缓存中获取结果,而不再去数据库查询。

一级缓存的作用域非常短暂,仅限于同一个SqlSession内部。当SqlSession被关闭、提交或回滚时,一级缓存也会被清空。因此,对于涉及到多个SqlSession的操作,一级缓存并不会生效。

 

2,

二级缓存(Global Cache) 二级缓存是一个跨SqlSession的缓存机制,可以在不同的SqlSession之间共享缓存数据。它的作用范围更广,可以跨多个SqlSession进行数据共享。

二级缓存需要手动配置,在MyBatis的配置文件中进行设置。通过开启二级缓存,可以将查询结果缓存到内存中,当下次需要相同数据时,直接从缓存中读取,避免了频繁的数据库查询操作,提升了系统性能。

需要注意的是,由于二级缓存是跨SqlSession的,因此需要保证被缓存的数据是可序列化的。同时,对于更新操作(如插入、更新、删除),MyBatis会自动更新相应的缓存数据。

总结起来,一级缓存适用于单个SqlSession内的查询操作,而二级缓存则适用于多个SqlSession之间的数据共享。根据实际需求,可以选择合适的缓存机制来提升系统性能。

二级缓存配置 要配置二级缓存,需要在MyBatis的配置文件(通常是mybatis-config.xml)中进行如下设置:

  1. 在 <configuration> 标签下添加 <settings> 标签。
  2. 在 <settings> 标签内添加 <setting name="cacheEnabled" value="true"/>,启用二级缓存。

此外,还需要在每个需要使用二级缓存的映射文件(Mapper XML)中进行配置。在映射文件的根元素(<mapper>)上添加 cache 属性,并指定对应的缓存实现类。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值