jdbc批量插入实例

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");
	}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/106342.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • EFI和EFI Shell命令简介[通俗易懂]

    EFI和EFI Shell命令简介[通俗易懂]EFI是ExtensibleFirmwareInterface的缩写,是介于平台固件和操作系统之间的一层软件接口。EFI是Intel在1998年开始的一个项目演变而来,而在2005年Intel将EFI1.10开源并交由UnifiedEFI开源社区去维护和开发,Intel自己的EFI也就不单独做了,都和开源社区共用一个。现在也通常用EFI来代指UEFI,二者不再有意区分。EFIShell

    2022年7月24日
    29
  • CSS属性

    CSS属性

    2022年3月4日
    35
  • win10edge启用html5,edge浏览器如何启用flash?win10 Edge浏览器禁用flash方法

    win10edge启用html5,edge浏览器如何启用flash?win10 Edge浏览器禁用flash方法Win10系统中新的默认浏览器Edge已经足够快了,如果想让它更快,可以禁用浏览器里面的Flash动画播放功能来帮助达到更快的上网体验,今天小编就向大家介绍一下Edge浏览器中Flash启用与禁用简单步骤。希望大家会喜欢。win10系统edge浏览器启用和禁用的方法:我们用Windows10的新Edge浏览器打开网页,如果这个网页上有Flash播放的声音、视频内容,在其标签…

    2022年5月12日
    79
  • 用户行为路径分析(User Path Analysis)「建议收藏」

    用户行为路径分析(User Path Analysis)「建议收藏」什么是用户行为路径?用户行为路径即抽象用户在网站或APP中的访问路径。其可用桑基图展现,称为用户路径图。什么是用户行为路径分析?用户路径分析追踪用户从某个开始事件直到结束事件的行为路径,即对用户

    2022年7月2日
    24
  • vs2017当前页面的脚本发生错误_win10当前页面脚本发生错误

    vs2017当前页面的脚本发生错误_win10当前页面脚本发生错误今天使用金山卫士对IE8进行组件升级,此后再此使用VS2008查看项目界面中的控件变量类型,或者添加变量,都弹出“当前页面脚本错误”。在网上进行查找。解决办法如下:1、进入到注册表编辑器。2、按照以下路径“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet  Settings\Zones”查看是否存在

    2022年8月30日
    2
  • 【16】进大厂必须掌握的面试题-100个python面试

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 我们整理了Python面试的主要问题清单,分为7个部分: 基本面试问题 OOPS面试问题 基本的Python程序 P…

    2021年6月23日
    142

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号