当前使用版本

    <dependency>
      <groupId>com.baomidou</groupId>
      <artifactId>mybatis-plus</artifactId>
      <version>3.0.3</version>
    </dependency>

在使用如下代码查询数据时,出现报错。报错原因是type为null 导致出现NPE

        QueryWrapper<MemberGoods> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().eq(MemberGoods::getDeleted, false);
        queryWrapper.lambda().eq(StringUtils.hasLength(type), MemberGoods::getType, GoodsType.valueOf(type));

可否先判断condition为true时,在获取val值;否在这段代码必须通过if判断才可以

        QueryWrapper<MemberGoods> queryWrapper = new QueryWrapper<>();
        queryWrapper.lambda().eq(MemberGoods::getDeleted, false);
        if (StringUtils.hasLength(type)) {
            queryWrapper.lambda().eq(MemberGoods::getType, GoodsType.valueOf(type));
        }

Comment From: miemieYaho

回炉java基础

Comment From: ghostg00

这和java 基础没关吧 我想的是他 应该是需要的是 eq(condition,column,Supplier) 传一个lambda表达式进去 根据 condition选择性的去执行 这个逻辑 这样他就不会报错了 也符合很多时候的逻辑 @miemieYaho @haiCheng-76 hai

Comment From: ghostg00

希望可以 支持这个的逻辑写法

Comment From: miemieYaho

func