Mybatis的优化(注解版)

博客围绕MyBatis注解版框架优化展开,介绍了三种优化方式。一是懒加载,可在Result的fetchType属性选择加载方式,有默认、立即、懒加载三种;二是通过需查询字段创建DTO类;三是缓存,首次查询写入缓存,后续查询读取缓存,修改或删除操作会清空缓存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.懒加载

在配置映射关联关系的Result中的fetchType属性选择懒加载,一共有三种加载方式,DEFAULT:默认,默认就是立即加载;EAGER:立即加载,每次查询都会查找这个属性;LAZY:懒加载,每当有需要用到这个属性的时候才会查找

 @Select("select * from student")
    @Results({
            @Result(id = true,property = "id",column = "id"),
            @Result(property = "name",column = "name"),
            @Result(property = "age",column = "age"),
            @Result(property = "gender",column = "gender"),
            @Result(property = "cid",column = "cid"),
            @Result(property = "aClass",column = "cid",one = @One(select = "cn.com.witsystem.dao.ClassMapper.findClassById",
                    fetchType = FetchType.LAZY)),
    })
    List<Student> findAll();

2.DTO

通过需要查询的字段创建一个DTO类,详情

3.缓存

原理图
在这里插入图片描述
第一次执行查询操作的时候会写入缓存,然后再执行查询操作的时候就是读取缓存中的数据,如果执行修改或删除操作就会清空缓存。关于mybatis注解版开启二级缓存

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值