MyBatis的删除操作
-
删除
-
删除一个
1.编写接口方法:Mapper接口
参数:id
结果:void
BrandMapper类里添加方法
/** * 根据id删除 */ void deleteById(int id);
2.编写SQL语句:SQL映射文件
BrandMapper.xml里添加SQL语句
<delete id="deleteById"> delete from tb_brand where id = #{id}; </delete>
3.执行方法,测试
测试类
@Test public void testDeleteById() throws IOException { //接收参数 int id = 6; //封装对象 //1.获取SqlSessionFactory String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //2.获取SqlSession对象 //SqlSession sqlSession = sqlSessionFactory.openSession(); SqlSession sqlSession = sqlSessionFactory.openSession(true); //3.获取Mapper接口的代理对象 BrandMapper brandMapper = sqlSession.getMapper(BrandMapper.class); //4.执行方法 brandMapper.deleteById(id); //提交事务 sqlSession.commit(); //5.释放资源 sqlSession.close(); }
-
批量删除
-
1.编写接口方法:Mapper接口
参数:id数组
结果:void
BrandMapper类添加方法
/** * 批量删除 */ void deleteByIds(@Param("ids") int [] ids);
2.编写SQL语句:SQL映射文件
<!-- MyBatis会将数组的参数,封装为一个Map集合, * 默认:array = 数组 * 使用@Param注解来改变map集合的默认的key的名称 --> <delete id="deleteByIds"> delete from tb_brand where id in( <foreach collection="ids" item="id" separator="," open="(" close=")"> #{id} </foreach> ); </delete>
3.执行方法,测试
测试类
@Test public void testDeleteByIds() throws IOException { //接收参数 int[] ids = {5,7,8}; //封装对象 //1.获取SqlSessionFactory String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); //2.获取SqlSession对象 //SqlSession sqlSession = sqlSessionFactory.openSession(); SqlSession sqlSession = sqlSessionFactory.openSession(true); //3.获取Mapper接口的代理对象 BrandMapper brandMapper = sqlSession.getMapper(BrandMapper.class); //4.执行方法 brandMapper.deleteByIds(ids); //提交事务 sqlSession.commit(); //5.释放资源 sqlSession.close(); }
java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示