最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

焦点日报:Java开发学习(四十七)----MyBatisPlus删除语句之多记录操作

来源:博客园

1、多记录操作

先来看下问题:

之前添加了很多商品到购物车,过了几天发现这些东西又不想要了,该怎么办呢?


(资料图片)

很简单删除掉,但是一个个删除的话还是比较慢和费事的,所以一般会给用户一个批量操作,也就是前面有一个复选框,用户一次可以勾选多个也可以进行全选,然后删一次就可以将购物车清空,这个就需要用到批量删除的操作了。

具体该如何实现多条删除,我们找找对应的API方法

int deleteBatchIds(@Param(Constants.COLLECTION) Collection idList);

翻译方法的字面意思为:删除(根据ID 批量删除),参数是一个集合,可以存放多个id值。

需求:根据传入的id集合将数据库表中的数据删除掉。

@SpringBootTestclass Mybatisplus03DqlApplicationTests {​  @Autowired  private UserDao userDao;      @Test  void testDelete(){    //删除指定多条数据    List list = new ArrayList<>();    list.add(1402551342481838081L);    list.add(1402553134049501186L);    list.add(1402553619611430913L);    userDao.deleteBatchIds(list);   }}

执行成功后,数据库表中的数据就会按照指定的id进行删除。

除了按照id集合进行批量删除,也可以按照id集合进行批量查询,还是先来看下API

List selectBatchIds(@Param(Constants.COLLECTION) Collection idList);

方法名称翻译为:查询(根据ID 批量查询),参数是一个集合,可以存放多个id值。

需求:根据传入的ID集合查询用户信息

@SpringBootTestclass Mybatisplus03DqlApplicationTests {​  @Autowired  private UserDao userDao;      @Test  void testGetByIds(){    //查询指定多条数据    List list = new ArrayList<>();    list.add(1L);    list.add(3L);    list.add(4L);    userDao.selectBatchIds(list);   }}

查询结果就会按照指定传入的id值进行查询。

关键词: 可以进行 批量操作 该怎么办