Wrapper<BanjiEntity> queryWrapper = new EntityWrapper<BanjiEntity>() .eq("yuanxi_types", banji.getYuanxiTypes()) .eq("banji_name", banji.getBanjiName()) .eq("banji_address", banji.getBanjiAddress()) ;和Wrapper<BanjiEntity> queryWrapper = new EntityWrapper<BanjiEntity>() .notIn("id",banji.getId()) .andNew() .eq("yuanxi_types", banji.getYuanxiTypes()) .eq("banji_name", banji.getBanjiName()) .eq("banji_address", banji.getBanjiAddress()) ;的区别
时间: 2024-01-18 15:02:20 浏览: 188
这两个代码段都是使用MyBatis-Plus的Wrapper类来构建查询条件。不同点在于第一个代码段只是根据指定的三个条件进行查询,而第二个代码段在此基础上加入了一个排除指定id的条件(notIn("id",banji.getId())),并使用andNew()将该条件与前面的三个条件进行逻辑上的“与”操作。也就是说,第二个代码段的查询条件相比于第一个代码段更加严格。
相关问题
为什么要用到 Wrapper<BanjiEntity> queryWrapper = new EntityWrapper<BanjiEntity>()
Wrapper<BanjiEntity> queryWrapper = new EntityWrapper<BanjiEntity>()是MyBatis-Plus中常用的查询条件构造器,它的作用是帮助我们方便地构建各种条件查询语句。
具体来说,EntityWrapper是MyBatis-Plus提供的一种查询条件构造器,它可以通过链式调用方式构建各种查询条件,例如:
```
EntityWrapper<BanjiEntity> wrapper = new EntityWrapper<>();
wrapper.eq("yuanxi_types", banji.getYuanxiTypes())
.eq("banji_name", banji.getBanjiName())
.eq("banji_address", banji.getBanjiAddress());
```
在这个例子中,EntityWrapper构造了三个等于查询条件,然后通过链式调用方式将它们组合成一个完整的查询条件。最后,我们可以将这个查询条件传递给MyBatis-Plus的selectList方法,来查询符合条件的BanjiEntity对象列表,例如:
```
List<BanjiEntity> banjiList = banjiMapper.selectList(wrapper);
```
在这个例子中,banjiMapper是一个MyBatis-Plus提供的Mapper类,它继承自MyBatis的Mapper接口,提供了一些常用的CRUD操作方法。
总之,Wrapper<BanjiEntity> queryWrapper = new EntityWrapper<BanjiEntity>()的作用是构建查询条件,它可以通过链式调用方式构建各种查询条件,并将它们传递给MyBatis-Plus的查询方法,来查询符合条件的数据。
BanjiEntity banjiEntity = banjiService.selectOne(queryWrapper);
BanjiEntity banjiEntity = banjiService.selectOne(queryWrapper)是MyBatis-Plus中常用的查询操作,它的作用是查询符合条件的单条数据。
具体来说,queryWrapper是一个查询条件构造器,可以通过链式调用方式构建各种查询条件,并将它们传递给MyBatis-Plus的selectOne方法,来查询符合条件的单条数据,例如:
```
EntityWrapper<BanjiEntity> wrapper = new EntityWrapper<>();
wrapper.eq("yuanxi_types", "计算机科学与技术")
.eq("banji_name", "计算机科学与技术1班");
BanjiEntity banjiEntity = banjiService.selectOne(wrapper);
```
在这个例子中,我们创建了一个EntityWrapper对象,并设置了两个等于查询条件,然后将它传递给banjiService的selectOne方法,查询符合条件的单条数据。
需要注意的是,selectOne方法只会返回符合条件的单条数据,如果有多条数据符合条件,它只会返回第一条数据。如果没有数据符合条件,它会返回null。
总之,BanjiEntity banjiEntity = banjiService.selectOne(queryWrapper)的作用是查询符合条件的单条数据,它可以通过查询条件构造器构建查询条件,并将它们传递给MyBatis-Plus的selectOne方法。
阅读全文