mybatis-plus中eqIfPresent和eq的区别
时间: 2024-06-02 18:13:15 浏览: 140
mybatis-plus中eqIfPresent和eq的区别在于eqIfPresent只在参数不为空时进行条件拼接,而eq无论参数是否为空都会进行条件拼接。举个例子,假设我们有一个实体类User,其中有两个属性username和age,我们想根据这两个属性进行查询,但是可能有些查询只需要根据username进行查询,有些查询只需要根据age进行查询,有些查询需要同时根据username和age进行查询。使用eqIfPresent可以方便地根据参数情况进行条件拼接,示例代码如下:
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eqIfPresent("username", username)
.eqIfPresent("age", age);
如果我们使用eq进行条件拼接,示例代码如下:
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("username", username)
.eq("age", age);
无论username和age是否为空,eq都会进行条件拼接,这可能会导致查询结果不符合预期。因此,eqIfPresent可以更加灵活地根据参数情况进行条件拼接。
相关问题
mybatis-plus和mybatis-plus-core的区别
mybatis-plus和mybatis-plus-core是MyBatis-Plus框架的两个核心模块,它们之间有以下区别:
1. mybatis-plus是MyBatis-Plus框架的主要模块,提供了许多增强功能和工具类,用于简化MyBatis的开发。它包含了mybatis-plus-core模块以及其他一些模块,如mybatis-plus-generator用于代码生成、mybatis-plus-spring-boot-starter用于与Spring Boot集成等。
2. mybatis-plus-core是MyBatis-Plus框架的核心模块,它提供了一些基本的增强功能,如通用Mapper、分页插件、逻辑删除等。它是mybatis-plus模块的基础,其他模块都依赖于它。
总结来说,mybatis-plus是MyBatis-Plus框架的主要模块,包含了mybatis-plus-core模块以及其他一些模块,提供了许多增强功能和工具类;而mybatis-plus-core是MyBatis-Plus框架的核心模块,提供了一些基本的增强功能,是其他模块的基础。
Mybatis-Plus eqIfPresent
Mybatis-Plus的eqIfPresent方法是用于在查询条件中添加等于判断的方法。它的作用是判断传入的参数是否为空,如果不为空,则将该参数作为查询条件的一部分,如果为空,则不添加该条件。这样可以避免在代码中进行繁琐的判空处理。[1]
例如,假设我们有一个UserInfo实体类,其中有一个name属性,我们想要根据name进行查询,但是name可能为空。使用eqIfPresent方法可以简化代码,示例如下:
```java
QueryWrapper<UserInfo> queryWrapper = new QueryWrapper<>();
queryWrapper.eqIfPresent("name", name);
List<UserInfo> userList = userInfoMapper.selectList(queryWrapper);
```
在上述代码中,eqIfPresent方法会判断name是否为空,如果不为空,则添加name等于传入的值作为查询条件,如果为空,则不添加该条件。这样可以避免在代码中手动进行判空处理,使代码更加简洁和美观。[1]
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)