mybatis-plus如何对集合内容进行模糊匹配
时间: 2023-10-13 20:08:45 浏览: 132
对于集合内容的模糊匹配,可以使用Mybatis-Plus提供的Wrapper类中的lambda表达式进行实现。具体做法是使用lambda表达式对集合进行遍历,并使用like关键字进行模糊匹配。以下是一个示例代码:
```
List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("orange");
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.lambda().in(User::getFruit, list)
.and(i -> i.like(User::getName, "John%"));
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,假设User类中有两个属性:name和fruit。其中fruit是一个枚举类型,取值为"apple"、"banana"或"orange"。我们要从数据库中查询出名字以"John"开头且fruits集合中包含"apple"、"banana"或"orange"的用户信息。
使用lambda表达式对fruits集合进行遍历,使用like关键字对name属性进行模糊匹配,最后使用in关键字将fruits集合作为参数传递给QueryWrapper类的lambda方法,并通过and关键字将两个条件组合在一起。最后调用selectList方法进行查询。
阅读全文