一、MybatisPlus 构造器对空值进行赋值传参

ignored 不管有没有有设置属性,所有的字段都会设置到insert语句中,如果没设置值,全为null,这种在update 操作中会有风险,把有值的更新为null
not_null,也是默认策略,也就是忽略null的字段,不忽略""
not-empty 为null,为空串的忽略,就是如果设置值为null,“”,不会插入数据库
当“”时更新字段为“”,则配置@TableField(strategy = FieldStrategy.IGNORED)

	@ApiModelProperty(value = "Agv编号(托架车位(托架号)/卡车车位(车牌号))")
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String agvId;

二、MybatisPlus 构造器空值不拼接sql

字段传参为空时,不拼接该字段的sql

QueryWrapper<Rooms> queryWrapper = new QueryWrappe
queryWrapper.eq("roomstatus",0)
			.in("roomtype",arr)
			.like(StringUtil.isNotEmpty(specials),"specials",specials)
			.orderByDesc("good");

三、设置limit

通过last(),效果等同于limit

queryWrapper.last("limit 0,5");

四、查询条件中使用函数

例如,在查询IP时,想使用INET_ATON()函数,可以使用apply()实现

queryWrapper.apply("INET_ATON(qsip) <= INET_ATON({0})", ipQuery);
queryWrapper.apply("INET_ATON(zzip) >= INET_ATON({0})", ipQuery);
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐