spring批处理mysql语句_Spring框架——批处理(batch)和事务(Transaction)

批处理(batch)

批处理(batch)------------>好比快递员【不能一件一件的送快递】

- 批处理指的是一次操作中执行多条SQL语句

- 批处理相比于一次一次执行效率会提高很多

- 批处理主要是分两步:

1.将要执行的SQL语句保存

2.执行SQL语句

- Statement和PreparedStatement都支持批处理操作,这里我们只需要掌握PreparedStatement的批处理方式:

- 方法:

void addBatch()

- 将要执行的SQL先保存起来,先不执行

- 这个方法在设置完所有的占位符之后调用

int[] executeBatch()

- 这个方法用来执行SQL语句,这个方法会将批处理中所有SQL语句执行

- mysql默认批处理是关闭的,所以我们还需要去打开mysql的批处理:

rewriteBatchedStatements=true

我们需要将以上的参数添加到mysql的url地址中

- 注意:低版本的mysql-jdbc驱动也不支持批处理,一般都是在修改的时候使用批处理,查询的时候不使用!

案例演示:

1.创建一张新的数据表

CREATE TABLE t_emp(

id INT PRIMARY KEY AUTO_INCREMENT,

NAME VARCHAR(50)

)

2.反复打开数据库客户端,插入语句【相当于每次获取一个connection连接,执行executeUpdate语句】

INSERT INTO t_emp(NAME) VALUES('张三');

SELECT * FROM t_emp;

3.引出批处理--->执行效率高,资源利用率好!

@Test//测试批处理

public void testBatch(){

//向t_emp表中插入10000条数据

//准备两个变量

Connection connection = null;

PreparedStatement ps = null;

try {

//获取数据库连接

connection=JDBCUtil.getConnection();

//准备SQL模板

String sql = "INSERT INTO t_emp(NAME) VALUES(?)";

//获取PrepareStatement

ps = con

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值