目录
- 一 .批量删除的流程
- 1.1 快速创建实体类
- 1.1.1 创建完毕后 除了属性 其他内容进行删除
 
- 1.2 创建mapper接口的抽象方法
- 1.3 编写sql语句
- 1.4 测试类
- Arrays.asList(删除对应的 id 值)
- 运行结果
 
 
✅作者简介:Java-小白后端开发者 🥭公认外号:球场上的黑曼巴
🍎个人主页:不会飞的小飞侠24
🍊个人信条:谨 · 信
💞当前专栏:高级内容
🥭本文内容:JAVA -----mybatis框架【mybatis的批量删除 】
更多内容点击👇
小飞侠的博客>>>>欢迎大家!!!


一 .批量删除的流程
- 快速创建实体类
- 创建mapper接口的抽象方法
- 编写sql语句
- 测试类
1.1 快速创建实体类
1.1.1 创建完毕后 除了属性 其他内容进行删除

 
创建完成后 更改的内容为:
包名
在类前加 注解–>@Data 内部自动生成有参 无参get set等
package cn.kgc.mybatis.entity;
import lombok.Data;
@Data
public class Emp{
  private long id;
  private String ename;
  private long age;
  private String deptno;
}
可在idea 左侧查看 实体类
 
1.2 创建mapper接口的抽象方法
选中 删除的数量 封装为集合
 Integer  deleteByIds(List<Integer> ids);
1.3 编写sql语句
书写sql语句
 <!--
      foreach
      collection:传递集合的标识符
      item 用于存储结合中的每一个元素
      open : 循环以什么标识开始
      separator :循环执行元素的分隔符
      close :循环结束标识符
    -->
   <delete id="deleteByIds">
    delete  from emp where
    <foreach collection="list" item="id" open="id in(" separator="," close=")">
        #{id}
    </foreach>
</delete>
1.4 测试类
package cn.syb.mapper;
import junit.framework.TestCase;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Before;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
import java.util.Arrays;
public class EmpMapperTest{
    SqlSessionFactory factory =null;
    @Before
    public void init(){
        try {
            InputStream resourceAsStream = Resources.getResourceAsStream("config/mybatis-config.xml");
            factory = new SqlSessionFactoryBuilder().build(resourceAsStream);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
//    批量删除
    @Test
    public void testDeleteByIds() {
        SqlSession sqlSession = factory.openSession(true);
        EmpMapper mapper = sqlSession.getMapper(EmpMapper.class);
        Integer integer = mapper.deleteByIds(Arrays.asList(1,4));
        System.out.println("integer = " + integer);
    }
}
Arrays.asList(删除对应的 id 值)
Integer integer = mapper.deleteByIds(Arrays.asList(1,4));
运行结果




















