mybatis plus QueryWrapper 条件构造器, 使用上的便利

本文介绍MyBatisPlus如何简化数据库操作,包括自动生成增删改查代码、集成分页插件及代码生成工具,提升开发效率。通过QueryWrapper条件构造器实现灵活查询,演示分页查询实现。
接触到mybatis plus后,会为我们的开发工作省去不少功夫,使得开发效率大大提高;

    一、增删改,常规的增删改不用手动挨个去写了。

    二、分页,集成了分页插件,不需要我们手动去实现分页接口。

    三、代码生成工具,可以实现数据库到实体类、接口、实现、web的转化,分分钟搞定。


             我们以往常通过mybatis操作数据库,基本就是xml来编写sql语句,再简单一点就是注解sql;

    mybatis plus使用后,增删改查最常规的操作几乎已经自动生成了,剩下要手动去编写的也就是查询了,根据各种条件去筛选查询;

    我们常用的解决方案就是在xml编写大量的sql脚本,大量的if判断;这样就会带来很多工作,xml字段的核对,接口、实现等等;

    今天简单给大家了解一下QueryWrapper 条件构造器,非常简单实用;

    List<PlanContent> tmpList = planContentMapper.selectList(new QueryWrapper<PlanContent>()
            .eq("org_id", planOrgDto.getOrgId())
            .eq("business_type_id", planOrgDto.getBusinessTypeId())
            .eq("business_type_param_id", planOrgDto.getBusinessTypeParamId())
            .eq("business_role_id", dto.getBusinessRoleId())
    );

分页的实现方式:
    IPage<PlanContent> tmpList = planContentMapper.selectPage(new Page<>(planContent.getPageNo(), planContent.getPageSize()),
            new QueryWrapper<PlanContent>()
                    .eq(planContent.getOrgId() != null, "org_id", planContent.getOrgId())
                    .eq("state", 1)
                    .in(appIds.size() > 0, "business_type_id", planContent.businessTypeId)
                    .orderByDesc("create_at")
    );

.in(query.business_type_id > 0, "business_type_id", query.businessTypeId)
    这一句简单说一下,根据查询条件大于0的情况下,才会加入这一条的筛选条件;
<if test="query.business_type_id > 0 and query.business_type_id != null">
    and business_type_id = #{query.businessTypeId}
</if>
    
    上面两段语句结果是一样的,只是实现方式不同而已.今天就到这吧...

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值