本文共 973 字,大约阅读时间需要 3 分钟。
用 baomidou.mybatisplus
封装的方法按指定字段查询数据库时,返回的 list 只有长度,没有元素。
public ListgetObtainerList() { List creditReportRecords = this.baseMapper.selectList( Wrappers. lambdaQuery() .select(CreditReportRecord::getObtainName)); if (CollectionUtils.isEmpty(creditReportRecords)){ return null; } return creditReportRecords.stream() .map(CreditReportRecord::getObtainName).collect(Collectors.toList()); }
数据库中的所有记录的 obtainName 字段都为 null 导致 list 的元素为null,所以报NPE。
查询的时候对 obtainName 字段做空过滤,那空的直接干掉。
ListcreditReportRecords = this.baseMapper.selectList( Wrappers. lambdaQuery() .select(CreditReportRecord::getObtainName) .isNotNull(CreditReportRecord::getObtainName));
转载地址:http://lunkk.baihongyu.com/