lambdaQueryWrapper.like(stringutils.isnotblank(),
时间: 2024-11-29 11:35:19 浏览: 18
LambdaQueryWrapper是一种阿里巴巴Mybatis Plus框架提供的动态SQL构建工具,它允许你在编写查询条件时使用类似于函数的方式来表达复杂的逻辑。`like(stringutils.isnotblank(), ...)`这部分表示使用`LIKE`操作符,并且其第一个参数是一个根据`stringutils.isnotblank()`方法处理后的字符串,这个方法通常用于检查输入是否非空。
`stringutils.isnotblank()`是一个假设存在的方法,它会检查传入的字符串是否为空或只包含空白字符,如果是,则返回false,否则返回true。这样,当条件为真时(即字符串非空),`like`操作会选择包含该部分的记录。
举例来说,如果你有一个用户表,你想找出所有用户名非空的用户,你可以这样做:
```java
List<User> users = userMapper.selectList(
LambdaQueryWrapper<User>()
.like("username", StringUtil.isNotBlank(userId))
);
```
这里`userId`会被传递给`isNotBlank()`方法,如果`userId`非空,就会生成类似`username LIKE '%userId%'`的查询语句。
相关问题
if(!(StringUtils.isNotBlank(user.getName()))){ // lambdaQueryWrapper.like(User::getName,user.getName())里面的isNotBlank爆红
这是因为StringUtils.isNotBlank()方法在使用时需要导入它所在的类,即org.apache.commons.lang3.StringUtils。如果没有正确导入该类,就会出现爆红提示。解决方法是在代码的开头添加导入语句:import org.apache.commons.lang3.StringUtils;
public TableDataInfo list(TAllParam tAllParam) { startPage(); //List<TAllParam> list = tAllParamService.selectTAllParamList(tAllParam); List<TAllParam> list = tAllParamService.selectList(tAllParam); // new LambdaQueryWrapper<TAllParam>().like(StringUtils.isNotBlank(tAllParam.getMsc()),TAllParam::getMsc,StringUtils.isNotBlank(tAllParam.getMsc())?tAllParam.getMsc().toUpperCase():"") // .like(StringUtils.isNotBlank(tAllParam.getClxh()),TAllParam::getClxh,tAllParam.getClxh()) // .like(StringUtils.isNotBlank(tAllParam.getHbpl()),TAllParam::getHbpl,tAllParam.getHbpl()) // .like(StringUtils.isNotBlank(tAllParam.getVehRlzl()),TAllParam::getVehRlzl,tAllParam.getVehRlzl()) // .like(StringUtils.isNotBlank(tAllParam.getClyyxzcbh()),TAllParam::getClyyxzcbh,tAllParam.getClyyxzcbh()) // .like(StringUtils.isNotBlank(tAllParam.getVehZbzl()),TAllParam::getVehZbzl,tAllParam.getVehZbzl()) for (TAllParam param: list) { if (StringUtils.isNotBlank(param.getBlcVin())){ param.setBlc("是"); }else { param.setBlc("否"); } } // 如果查询条件中有blc字段,则按照该字段进行匹配查询 if (StringUtils.isNotBlank(tAllParam.getBlc())) { list = list.stream().filter(param -> tAllParam.getBlc().equals(param.getBlc())).collect(Collectors.toList()); } return getDataTable(list);这样根据查询‘保留车’得到的数据只是第一页的(带了分页的),如何查询出不带分页的
要查询不带分页的数据,可以将 `startPage()` 方法注释掉,这样就不会开启分页功能,查询出的数据就是全部数据,而不是只有第一页的数据。修改后的代码如下:
```
public TableDataInfo list(TAllParam tAllParam) {
//startPage(); // 注释掉该行代码
List<TAllParam> list = tAllParamService.selectList(tAllParam);
for (TAllParam param: list) {
if (StringUtils.isNotBlank(param.getBlc())) {
param.setBlc("是");
} else {
param.setBlc("否");
}
}
if (StringUtils.isNotBlank(tAllParam.getBlc())) {
list = list.stream().filter(param -> tAllParam.getBlc().equals(param.getBlc())).collect(Collectors.toList());
}
return getDataTable(list);
}
```
阅读全文