接触到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>
上面两段语句结果是一样的,只是实现方式不同而已.今天就到这吧...
mybatis plus QueryWrapper 条件构造器, 使用上的便利
猜你喜欢
转载自blog.csdn.net/lizhao1226/article/details/108056103
今日推荐
周排行