LambdaQueryWrapper增加方法
时间: 2023-10-19 13:35:49 浏览: 39
LambdaQueryWrapp<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [MyBatis-Plus QueryWrapper及LambdaQueryWrapper的使用、场景、区别](https://blog.csdn.net/weixin_42164754/article/details/125389584)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
相关问题
lambdaquerywrapper增加条件
在LambdaQueryWrapper中增加条件可以使用`eq`方法来添加等于条件,使用`or`方法来添加或者条件。根据引用的内容,可以使用以下代码示例来实现动态拼接条件:
```java
LambdaQueryWrapper<User> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(User::getIsDeal, true)
.and(wrapper -> wrapper.eq(User::getBridgeName, "桥名1")
.or().eq(User::getBridgeName, "桥名2"));
List<User> userList = userService.list(queryWrapper);
```
其中,`User`是对应的实体类,`User::getIsDeal`和`User::getBridgeName`是实体类中的字段名。上述代码将动态拼接了一个条件,即`(is_deal = true AND (bridge_name = '桥名1' OR bridge_name = '桥名2'))`。这样可以根据需要灵活地增加条件。<span class="em">1</span><span class="em">2</span>
#### 引用[.reference_title]
- *1* *2* [MyBatis-Plus中的LambdaQueryWrapper之动态添加不确定个数的or条件](https://blog.csdn.net/qq_44885517/article/details/127693835)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
lambdaquerywrapper的优劣
LambdaQueryWrapper的优劣是这样的:
优点:
1. 方便性:使用LambdaQueryWrapper可以方便地进行查询操作,尤其对于一些复用性不高的查询代码,相比编写SQL语句会更加方便。你只需要在Controller层就可以完成Service层和Mapper层的代码,减少了编写代码的工作量。
2. 简化代码:LambdaQueryWrapper可以将查询条件以Lambda表达式的形式进行编写,使得代码更加简洁易读。同时,它还提供了一些方法用于拼接查询条件,使得查询操作更加灵活。
缺点:
1. 代码复用性差:LambdaQueryWrapper在处理一些查询逻辑不复用的情况下确实更方便,但这也导致了代码复用性较差。因为每次查询都需要重新编写查询条件,不能像写SQL语句那样直接复用已有的查询代码。
2. 耦合性增加:LambdaQueryWrapper的使用可能会导致Service层与Mapper层的耦合性增加。由于查询操作直接写在Service层,可能会造成Service层与数据库操作层的紧耦合,不利于代码的模块化和扩展性。
综上所述,LambdaQueryWrapper的优点是方便性和简化代码,但缺点是代码复用性差和耦合性增加。在实际开发中,根据项目需求和团队约定,可以权衡使用LambdaQueryWrapper还是直接编写SQL语句来进行查询操作。