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的影响行数都是一行

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

相关内容

热门资讯

管门口的金毛四年级作文【推荐... 管门口的金毛四年级作文 篇一我家门口有一只非常可爱的金毛犬,它是我们的守门员,每天都在门口忠实地守卫...
我的压岁钱小学四年级作文【通... 我的压岁钱小学四年级作文 篇一我的压岁钱春节是我最喜欢的节日,因为我可以收到压岁钱。每年过年的时候,...
致那份友谊小学作文(推荐3篇... 致那份友谊小学作文 篇一友谊的力量亲爱的友谊小学的老师们和同学们:我是一名来自友谊小学的学生,今天我...
为自己喝彩小学生作文【精简6... 为自己喝彩小学生作文 篇一我是一名小学生,每天都在学校度过快乐的时光。我喜欢上学,因为学校给了我很多...
我生病了小学作文【精简6篇】 我生病了小学作文 篇一我生病了前几天,我不知道怎么了,突然感觉身体不舒服。我感到头晕目眩,喉咙痛得像...
新学期新打算小学作文450字... 新学期新打算篇一:我要努力学习新的学期开始了,我制定了新的打算,那就是要努力学习。我相信只有努力学习...
我学会了西红柿炒鸡蛋小学作文... 我学会了西红柿炒鸡蛋小学作文 篇一我学会了西红柿炒鸡蛋上周,我学会了一道简单又美味的菜——西红柿炒鸡...
花朵的小学作文【最新3篇】 花朵的小学作文 篇一花朵的奇妙世界花朵是大自然的美丽礼物,它们以各种各样的颜色和形状装点着我们的环境...
小学生赏花的作文【通用4篇】 小学生赏花的作文 篇一春天是一个充满美丽花朵的季节,我非常喜欢春天。每当春天来临,我就会和家人一起去...
中秋之夜小学生作文【优选3篇... 中秋之夜小学生作文 篇一中秋之夜,月亮圆圆的,像一块白玉挂在天空中。我和爸爸妈妈一起出门,欣赏美丽的...
油面筋塞肉小学作文(推荐3篇... 油面筋塞肉小学作文 篇一我喜欢吃美食,尤其是一些特色的小吃。最近,我发现了一种非常好吃的小吃,那就是...
学游泳的小学作文(实用3篇) 学游泳的小学作文 篇一学游泳的小学作文大家好!我是小明,今天我要给大家分享一下我学游泳的经历。我是一...
小学生作文老师我想对你说【最... 小学生作文老师我想对你说 篇一尊敬的老师:您好!我是您的学生小明。我想借这篇作文向您表达我的感激之情...
一次有趣的实验小学生作文80... 一次有趣的实验篇一昨天,我参加了一次非常有趣的实验。老师让我们小组一起进行,我非常期待这个实验的结果...
春天小学一年级作文300字【... 春天小学一年级作文300字 篇一我的春天春天来了,大地上百花盛开,绿草如茵。我喜欢春天,因为春天是个...
校园的一角的作文【优选6篇】 校园的一角的作文 篇一校园的一角在校园的一角,有一个小花园,是我最喜欢的地方。虽然它不大,但却别有一...
参观科技馆的小学作文400字... 参观科技馆的小学作文400字 篇一:奇妙的科技世界我参观了我们学校附近的科技馆,这里展示了许多令人惊...
值得的学生作文【实用3篇】 值得的学生作文 篇一突破自我,迈向成功作为一名学生,我们应该时刻保持一种积极向上的心态,勇于追求进步...
走进直播间小学作文(最新4篇... 走进直播间小学作文 篇一近年来,随着互联网技术的快速发展,直播已经成为了一种非常流行的媒体形式。除了...
我的学校小学作文350字【精... 我的学校小学作文350字 篇一我所在的学校是一所小学,位于市区的中心地带。学校占地面积较小,但是设施...