java Spring JdbcTemplate配合mysql实现数据批量修改
创始人
2024-05-29 01:46:27
0

其实这个操作和批量添加挺像的 调的同一个方法

首先 我们看数据库结构
在这里插入图片描述
这是我本地的 mysql 里面有一个test数据库 里面有一张user_list表

然后创建一个java项目 然后 引入对应的JAR包
在这里插入图片描述
在src下创建 dao 目录

在下面创建一个接口 叫 BookDao 参考代码如下

package dao;import mydata.user_list;
import java.util.List;public interface BookDao {void reviseUser(List user_list);
}
 

这里 我们顶一个了一个reviseUser抽象方法 引入了一个以数组泛型的List集合
然后 我们在dao 目录下创建一个类 我这里叫 BookDaoImpl
参考代码如下

package dao;import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Repository;import java.util.Arrays;
import java.util.List;@Repository
public class BookDaoImpl implements BookDao {@Autowiredprivate JdbcTemplate jdbcTemplate;@Overridepublic void reviseUser(List user_list) {String sql = "UPDATE user_list SET user_name = ? WHERE user_id = ?;";int[] ints = jdbcTemplate.batchUpdate(sql,user_list);System.out.println(Arrays.toString(ints));}
}
 

这里 我们实现了BookDao接口 然后重写了 他的 reviseUser方法 这里 我们调用了jdbcTemplate的batchUpdate
第一个参数 接收一段sql语句 第二个参数 则是一个数组泛型集合

然后 在 src下创建目录 叫 senvice
下面创建一个类 叫 BookService
参考代码如下

package senvice;import dao.BookDao;
import mydata.user_list;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.List;@Service
public class BookService {@Autowiredprotected BookDao BookDao;public void reviseUser(List user_list){BookDao.reviseUser(user_list);}
}
 

这里 我们多做了一层调用而已 为了架构
然后 在src下创建一个 bean.xml配置文件
参考代码如下


                    

这些基本的链接数据库配置 我就不多讲了

然后 我们在src目录下创建测试类 编写代码如下

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import senvice.BookService;import java.util.ArrayList;
import java.util.List;public class text {public static void main(String args[]) {ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");BookService bookService = context.getBean("bookService", BookService.class);List batehArgs = new ArrayList<>();Object[] o1 = {"曹操",10};Object[] o2 = {"刘备",11};Object[] o3 = {"孙权",12};batehArgs.add(o1);batehArgs.add(o2);batehArgs.add(o3);bookService.reviseUser(batehArgs);}
}

之所以这样写 是因为我们写的sql 第一个问号对应要修改成什么样的名称 第二个 则是条件id
在这里插入图片描述
我们这里写的几个id分别是 10 11 12

我们看一下这几条数据
在这里插入图片描述
然后 我们运行测试类代码

运行结果如下
在这里插入图片描述
可以看到 系统控制台显示运行成功 返回了每次sql的影响行数都是一行

我们到数据库 刷新表并重新打开
在这里插入图片描述
我们这几条数据就修改成功啦
在这里插入图片描述

相关内容

热门资讯

二年级主持词 二年级主持词  主持词分为会议主持词、晚会主持词、活动主持词、婚庆主持词等。在一步步向前发展的社会中...
年会的主持词 年会的主持词范文(通用5篇)  根据活动对象的不同,需要设置不同的主持词。时代不断在进步,主持词是活...
姨妈的后现代生活经典台词分享 姨妈的后现代生活经典台词分享  吉日良辰当欢笑,为什么鲛珠化泪抛?此时却又明白了,世上何尝尽富豪。也...
学校语文教研活动主持词 学校语文教研活动主持词  借鉴诗词和散文诗是主持词的一种写作手法。在一步步向前发展的社会中,很多晚会...
六一庆祝大会主持词 六一庆祝大会主持词  六一就是我们的节日,六一就是一个欢乐的日子,下面小编整理的六一庆祝大会主持词,...
婚礼感谢词 婚礼感谢词(15篇)婚礼感谢词1各位来宾,各位亲友:  大家晚上好!  今日是我女儿XXX和女婿XX...
文艺汇演主持词开场白 文艺汇演主持词开场白9篇  根据活动对象的不同,需要设置不同的主持词。我们眼下的社会,活动集会越来越...
总结大会主持词   导语:春去秋回又一栽,似水流年旺年来。  2017年公司年会主持词  一.主持人开场白  男:一...
农村结婚典礼主持词 农村结婚典礼主持词  一对新人立堂前,两心相印似蜜甜,三生有幸结良缘,下面是小编分享的 农村结婚典礼...
春节联欢晚会主持词开场白   翻开精美的日历,我细数着春节将要来临。那是我们中华民族的传统节日,更是我期盼的佳节,因为只有这几...
真爱至上中英文经典台词 真爱至上中英文经典台词  1、All I want for Christmas is you.  今...
欢聚一堂舞蹈主持词 欢聚一堂舞蹈主持词  串词是在晚会、联欢会等大型联欢活动中,主持人把前后节目,把整台节目恰到好处的联...
主持词结束语 主持词结束语(通用12篇)  利用在中国拥有几千年文化的诗词能够有效提高主持词的感染力。在人们越来越...
秋季小学开学典礼校长的致辞 秋季小学开学典礼校长的致辞(通用13篇)  在学习、工作、生活中,许多人都有过写致辞的经历,对致辞都...
五月的主持词开场白 五月的主持词开场白  主持人在台上表演的灵魂就表现在主持词中。在当下这个社会中,各种场合中活跃现场气...
重阳节优秀致辞 重阳节优秀致辞范文  无论是身处学校还是步入社会,大家都用到过致辞吧,在各种重大的庆典、外交、纪念活...
QQ群晚会开幕词 QQ群晚会开幕词  QQ群晚会开幕词    尊贵的各位嘉宾,群主,各位管理,群友们大家晚上好:   ...
主持谢幕词 主持谢幕词范本  篇一:主持谢幕词  愿一切荣耀、尊贵、颂赞都归给至高上帝!  都说“台上一分钟,台...
圣诞节联欢晚会主持词 圣诞节联欢晚会主持词  主持词的写作需要将主题贯穿于所有节目之中。在一步步向前发展的社会中,主持词与...
元宵节的主持词 元宵节的主持词  一般在节日的时候,都是会举行一些活动的,尤其是在元宵节这个大型的节日。下面是小编为...