首页 > 其他分享 >使用mybatis进行批量添加与批量删除

使用mybatis进行批量添加与批量删除

时间:2023-09-12 15:24:15浏览次数:30  
标签:StoreHouseMapper 批量 StoreHouse void ids sqlSession 添加 mybatis Integer

2023-09-12

 StoreHouseMapper

 /**
     * 批量添加
     */
    void insertMoreSH(@Param("storeHouses") List<StoreHouse> storeHouses);

    /**
     * 批量删除方式一
     */
    void deleteMoreSH(@Param("ids")Integer[] ids);

    /**
     * 批量删除方式二
     */
    void deleteMoreSHTwo(@Param("ids")Integer[] ids);

StoreHouseMapper.xml

    <insert id="insertMoreSH">
        insert into t_storehouse(id,s_name,s_type,s_description) values
        <foreach collection="storeHouses" item="storeHouse" separator=",">
            (null,#{storeHouse.sName},#{storeHouse.sType},#{storeHouse.sDescription})
        </foreach>
    </insert>

    <delete id="deleteMoreSH">
        delete
        from t_storehouse
        where id in (
            <foreach collection="ids" item="id" separator=",">
                #{id}
            </foreach>
            )
    </delete>

<!--    批量删除方式二-->
    <delete id="deleteMoreSHTwo">
        delete
        from t_storehouse
        where
        <foreach collection="ids" item="id" separator="or">
            id =  #{id}
        </foreach>

    </delete>

测试

@Test
    public void testInsertSH(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        StoreHouseMapper mapper = sqlSession.getMapper(StoreHouseMapper.class);
        StoreHouse storeHouse1 = new StoreHouse(null,"山西仓库","自用仓库","存放醋");
        StoreHouse storeHouse2 = new StoreHouse(null,"云南仓库","自用仓库","存放米线");
        StoreHouse storeHouse3 = new StoreHouse(null,"陕西仓库","自用仓库","存放玉米");
        List<StoreHouse> list = Arrays.asList(storeHouse1, storeHouse2, storeHouse3);
        mapper.insertMoreSH(list);

        sqlSession.close();
    }

    @Test
    public void testDeleteSH(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        StoreHouseMapper mapper = sqlSession.getMapper(StoreHouseMapper.class);
        Integer[] ids = new Integer[]{5,6};
        mapper.deleteMoreSH(ids);

        sqlSession.close();
    }

    @Test
    public void testDeleteSHTwo(){
        SqlSession sqlSession = SqlSessionUtils.getSqlSession();
        StoreHouseMapper mapper = sqlSession.getMapper(StoreHouseMapper.class);
        Integer[] ids = new Integer[]{8,9};
        mapper.deleteMoreSHTwo(ids);

        sqlSession.close();
    }

 

标签:StoreHouseMapper,批量,StoreHouse,void,ids,sqlSession,添加,mybatis,Integer
From: https://www.cnblogs.com/isDaHua/p/17696263.html

相关文章

  • MyBatisPlus插件访问不到云数据库的解决方案
      今天在学mybatis-plus时候了解到除了MybatisX插件外还有个大佬写的MyBatisPlus插件,个人感觉他默认自动生成代码的风格会比MybatisX插件更适合中国程序员,跳转的图标也比小鸟更合适。  但是在连接云数据库的时候出了问题,发现他根本连接不到云数据库,问了其他人,他们表示自己的......
  • mybatis中的多表联查(第一步先通过仓库的id获取仓库数据,第二部通过在仓库数据中包含的
    2023-09-12仓库StoreHouseMapper/***分步查询*首先通过仓库的id查询出仓库*/StoreHousegetSHAndGoodsByStepOne(@Param("id")Integerid);StoreHouseMapper.xml<resultMapid="getSHAndGoodsByStepOneRM"type="StoreHouse&q......
  • Python合并不同Word并同时添加多个分页符的方法
      本文介绍基于Python,实现对多个Word文档加以自动合并,并在每次合并时按要求增添一个分页符的方法。  现有多个Word文档文件,需将其按名称顺序合并为一个新的Word文件,且需保证每一次合并时,都另起一页(即新的Word文件一页中,不能出现两个及以上的原本单个Word文件的内容)。  一般......
  • mybaits生成类的工具MyBatis Generator
    MyBatis生成类的工具MyBatisGenerator,是一种非常有用的工具,它可以帮助开发者快速生成Java代码,从而提高开发效率。在本文中,我们将介绍MyBatis生成类的基本概念、使用方法和注意事项。MyBatisGenerator是什么?MyBatisGenerator是MyBatis官方提供的一个代码生成工具,可以根据数据库......
  • selenium4 请求chrome 如何添加header请求头
    前言selenium的webdriver本身没有api能做这个事情,详见issue。国内的博客全抄来抄去,说selenium直接加add_argument参数就好了,弄得找了好几天找代码问题,上外网查秒解决。所以要学好计算机还是得英文呐~~我用requests登录后,获取到了认证信息,但是接下来的请求我不再使用requests,而......
  • mybatis中设置自增的值,使用resultmap设置多对一的关系以及使用级联的方式设置多对一的
    2023-09-11UserMappervoidinsertUser(Useruser);UserMapper.xml<insertid="insertUser"useGeneratedKeys="true"keyProperty="id">insertintot_uservalues(null,#{name},#{password},#{age},#{gender},#{email})......
  • 饲料添加剂 微生物 植物乳杆菌
    1范围本文件规定了饲料添加剂植物乳杆菌的技术要求、采样、检验规则、标签、包装、运输、贮存和保质期,描述了相应的试验方法。本文件适用于以植物乳杆菌为菌种,经液态发酵、干燥等工艺后制得的饲料添加剂产品。2规范性引用文件下列文件中的内容通过文中的规范性引用而构成本文......
  • 零代码编程:用ChatGPT批量合并ts文件
    文件夹中有很多个ts后缀的视频文件,要合并成一个视频文件,在ChatGPT中可以这样输入提示词:你是一个Python编程专家,要完成一个批量合并ts文件的任务,具体步骤如下:打开文件夹:C:\Users\dell\Pictures\CameraRoll\index-f1-v1-a1_20230825221408\Part_0按照文件名称的顺序将文件夹中所有.t......
  • 批量导入文档
       ......
  • mybatis中的模糊查询,批量删除,以及按照表名查询
    2023-09-111、模糊查询UserMapperList<User>getUserByLike(Stringmohu);UserMapper.xml<selectid="getUserByLike"resultType="com.hh.pojo.User">select*fromt_userwherenamelike"%"#{mohu}"%&qu......