Mybatis使用注解方式实现批量更新、批量新增

举报
刘大猫 发表于 2024/11/03 19:52:36 2024/11/03
【摘要】 Mybatis使用注解方式实现批量更新、批量新增

记得数据源配置==allowMultiQueries=true&==
不然会报错 -> 添加链接描述


@[TOC]

举例说明

spring.datasource.url=jdbc:mysql://IP:端口/geespace_bd_platform_dev?allowMultiQueries=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&
spring.datasource.username=用户名
spring.datasource.password=密码
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

@Update批量更新

@Update({"<script>",
            "<foreach collection='list' item= 'item' index ='index' separator=';'>",
            "update ge_data_meta_base set table_size=#{item.dataLength},update_time=now() where id=#{item.id}",
            "</foreach>",
            "</script>"})
    long batchUpdate(@Param("list") List<AssociationTable> list);

@insert批量新增

@Insert("<script>" + "INSERT INTO data_size(size,fileSize,tableSize,userId,date) VALUES"
            + "<foreach collection='dataSizes' item= 'item' index ='index' separator=','>"
            + "(#{item.size},#{item.fileSize},#{item.tableSize},#{item.userId},#{item.date})"
            + "</foreach>" + "</script>")
    @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
    long addDataSize(@Param("dataSizes") List<DataSize> dataSizes);
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。