LambdaQueryWrapper 和 LambdaQueryChainWrapper 的区别
时间: 2024-01-10 11:21:35 浏览: 87
LambdaQueryWrapper和LambdaQueryChainWrapper是MyBatis-Plus框架中的两个查询条件构造器,用于简化数据库查询操作。
LambdaQueryWrapper是一个普通的查询条件构造器,可以通过lambda表达式来构建查询条件。它提供了一系列的方法,如eq、ne、gt、ge、lt、le等,用于构建等于、不等于、大于、大于等于、小于、小于等于等各种查询条件。使用LambdaQueryWrapper可以方便地构建复杂的查询条件。
LambdaQueryChainWrapper是LambdaQueryWrapper的链式调用封装,它继承了LambdaQueryWrapper的所有方法,并且可以通过链式调用的方式来构建查询条件。相比LambdaQueryWrapper,LambdaQueryChainWrapper更加简洁和易用,可以通过链式调用一步步地构建查询条件,而不需要每次都创建新的对象。
总结一下两者的区别:
1. LambdaQueryWrapper是普通的查询条件构造器,通过lambda表达式来构建查询条件。
2. LambdaQueryChainWrapper是LambdaQueryWrapper的链式调用封装,可以通过链式调用的方式来构建查询条件。
相关问题
LambdaQueryWrapper和LambdaQueryChainWrapper
LambdaQueryWrapper和LambdaQueryChainWrapper都是用于构建查询条件的包装器类。它们可以用来方便地创建查询条件并执行数据库查询操作。
LambdaQueryWrapper是一个普通的包装器类,它可以通过lambda表达式来创建查询条件。通过lambdaQueryWrapper.eq()方法可以添加等于条件,通过select()方法可以指定查询的字段,通过orderBy()方法可以指定排序规则等。最后,通过调用orderMapper.selectOne(lambdaQueryWrapper)方法可以执行查询操作并返回一个结果。
LambdaQueryChainWrapper是一个链式包装器类,它继承自LambdaQueryWrapper。它可以通过链式调用的方式创建查询条件。通过lambdaQueryChainWrapper.select()方法可以指定查询的字段,通过eq()方法可以添加等于条件。最后,通过调用lambdaQueryChainWrapper.one()方法可以执行查询操作并返回一个结果。
总结来说,LambdaQueryWrapper和LambdaQueryChainWrapper都是用于构建查询条件的包装器类,它们可以方便地创建查询条件并执行数据库查询操作。LambdaQueryWrapper使用lambda表达式来创建查询条件,而LambdaQueryChainWrapper使用链式调用的方式创建查询条件。
lambdaquerywrapper和Lambdaquerychainwrapper
LambdaQueryWrapper和LambdaQueryChainWrapper都是MyBatis-Plus框架中的查询构造器,用于构建复杂的查询条件。
LambdaQueryWrapper是一个普通的查询构造器,可以通过lambda表达式来构建查询条件,例如:
```java
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(User::getUsername, "张三").or().eq(User::getUsername, "李四");
List<User> userList = userMapper.selectList(wrapper);
```
上述代码中,LambdaQueryWrapper构造了一个查询条件,查询用户名为“张三”或“李四”的用户列表。
LambdaQueryChainWrapper是LambdaQueryWrapper的链式调用方式,可以更加简洁地构建查询条件,例如:
```java
List<User> userList = new LambdaQueryChainWrapper<>(userMapper)
.eq(User::getUsername, "张三")
.or()
.eq(User::getUsername, "李四")
.list();
```
上述代码中,LambdaQueryChainWrapper通过链式调用的方式构建了一个查询条件,查询用户名为“张三”或“李四”的用户列表。
需要注意的是,LambdaQueryWrapper和LambdaQueryChainWrapper的使用方法略有不同,具体使用哪种方式取决于个人喜好和实际情况。