jdbc批量插入实例

package test;

import java.sql.DriverManager;
import java.util.ArrayList;
import java.util.List;

import com.allinfinance.cis.br.infrastructure.TmBrIvsOut;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;


public class testIvs {
	public static void main(String args[]){
		TmBrIvsOut tmBrIvsOut=new TmBrIvsOut();
		tmBrIvsOut.setOutId(3);
		tmBrIvsOut.setOrg("001");
		tmBrIvsOut.setCustId("22");
		TmBrIvsOut tmBrIvsOut2=new TmBrIvsOut();
		tmBrIvsOut2.setOutId(4);
		tmBrIvsOut2.setOrg("001");
		tmBrIvsOut2.setCustId("22");
		List<TmBrIvsOut> tmBrIvsOuts=new ArrayList<TmBrIvsOut>();
		tmBrIvsOuts.add(tmBrIvsOut2);
		tmBrIvsOuts.add(tmBrIvsOut);
		//以一次性插入上面两条数据为例
		try {
			batchInsert(tmBrIvsOuts);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private static void batchInsert(List<TmBrIvsOut> tmBrIvsOuts) throws Exception {
		Class.forName("com.mysql.jdbc.Driver");//获取驱动
		Connection conn=(Connection) DriverManager.getConnection("jdbc:mysql://10.2.17.37:3306/cis?useServerPrepStmts=false&rewriteBatchedStatements=true",
                       "username", "password");//连接数据库
		conn.setAutoCommit(false);//关闭自动提交
		PreparedStatement ps=(PreparedStatement) conn.prepareStatement("insert into TM_BR_IVS_OUT "
				+"(org,cust_id,out_id,code_key,code_value,out_name)"+ "values"+ "(?,?,?,?,?,?)");//sql语句
		for(TmBrIvsOut tb:tmBrIvsOuts){
			//1,2,3....表示sql中对应的每个?
			ps.setString(1, tb.getOrg());
			ps.setString(2, tb.getCustId());
			ps.setLong(3, tb.getOutId());
			ps.setString(4, null);
			ps.setString(5, null);
			ps.setString(6, null);
			ps.addBatch();//手机多条数据
		}
		ps.executeBatch();//同时提交多条数据
		conn.commit();
		ps.close();
		ps.close();
		System.out.println("success");
	}

}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老马识途2.0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值