MyBatisPlus 自定义Sql
利用MybatisPlus的Wrapper来构建复杂的Where条件,然后自定义Sql语句中剩余的部分
1.基于Wrapper构建where条件
LambdaQueryWrapper<ShippingOrderEntity> queryWrapper = new LambdaQueryWrapper<>(); //姓名-模糊 queryWrapper.like(StringUtils.isNotBlank(shippingOrderListDTO.getUserName()),ShippingOrderEntity::getUserName,shippingOrderListDTO.getUserName()); //手机号-模糊 queryWrapper.like(StringUtils.isNotBlank(shippingOrderListDTO.getPhone()),ShippingOrderEntity::getPhone,shippingOrderListDTO.getPhone()); //配送方式-精确 queryWrapper.eq(null != shippingOrderListDTO.getTakeType(),ShippingOrderEntity::getTakeType,shippingOrderListDTO.getTakeType()); //运单状态-精确 queryWrapper.eq(null != shippingOrderListDTO.getStatus(),ShippingOrderEntity::getStatus,shippingOrderListDTO.getStatus());\
shippingOrderMapper.queryShippingOrderList(queryWrapper);
2.在mapper方法中用Param注解声明wrapper变量名称,必须是ew
List<ShippingOrderVO> queryShippingOrderList(@Param("ew") LambdaQueryWrapper<ShippingOrderEntity> queryWrapper);
3.自定义Sql,并使用Wrapper条件
<select id="queryShippingOrderList" resultType="com.fancy.portal.bean.vo.ShippingOrderVO"> select <include refid="shippingOrderColumn" /> from GZH_SHIPPING GS <where> ${ew.sqlSegment} </where> </select>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
2020-10-28 Webuploader 简单图片上传 支持多图上传