为什么后端保存要用到EntityWrapper
时间: 2023-07-20 13:15:27 浏览: 35
后端保存操作一般不需要使用EntityWrapper,因为保存操作是向数据库中插入一条新数据,而不是查询数据。
EntityWrapper是MyBatis-Plus中的一个查询条件构造器,它适用于各种查询操作,可以方便地构建各种查询条件。在保存数据时,我们只需要创建一个实体对象,设置它的属性值,然后调用save或insert方法即可将数据保存到数据库中,例如:
```
BanjiEntity banjiEntity = new BanjiEntity();
banjiEntity.setYuanxiTypes("计算机科学与技术");
banjiEntity.setBanjiName("计算机科学与技术1班");
banjiEntity.setBanjiAddress("教学楼C101");
banjiService.save(banjiEntity);
```
在这个例子中,我们创建了一个BanjiEntity对象,并设置了它的属性值,然后调用banjiService的save方法,将BanjiEntity对象保存到数据库中。
需要注意的是,save方法会根据实体对象的主键判断是执行插入还是更新操作。如果实体对象的主键值为null,则执行插入操作;如果主键值不为null,则执行更新操作。
因此,在后端保存操作中不需要使用EntityWrapper,只需要创建实体对象并设置属性值,然后调用save或insert方法即可将数据保存到数据库中。
相关问题
为什么要用到 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的查询方法,来查询符合条件的数据。
EntityWrapper查询条件都要满足吗
EntityWrapper查询条件默认是and条件,也就是说,多个查询条件都要满足才能查询出符合条件的数据。例如:
```
EntityWrapper<User> wrapper = new EntityWrapper<>();
wrapper.eq("name", "张三")
.eq("age", 18);
List<User> userList = userMapper.selectList(wrapper);
```
在这个例子中,我们创建了一个EntityWrapper对象,并设置了两个等于查询条件,分别是name等于"张三"和age等于18。这两个查询条件都要满足才能查询出符合条件的数据。
如果想使用or条件查询,可以使用or方法,例如:
```
EntityWrapper<User> wrapper = new EntityWrapper<>();
wrapper.eq("name", "张三")
.or()
.eq("age", 18);
List<User> userList = userMapper.selectList(wrapper);
```
在这个例子中,我们使用or方法将两个查询条件设置为or条件,只要有一个条件满足即可查询出符合条件的数据。
需要注意的是,EntityWrapper还支持各种其他类型的查询条件,例如in查询条件、like查询条件、isNull查询条件等,可以根据具体的业务需求选择适合的查询条件进行构建。
总之,EntityWrapper查询条件默认是and条件,多个查询条件都要满足才能查询出符合条件的数据。如果需要使用or条件,可以使用or方法设置查询条件。