java批量操作_我的批量操作

这篇博客展示了如何使用Java连接到SQLServer数据库,并通过PreparedStatement进行批量插入操作。代码中首先设置了数据库连接参数,然后加载了JDBC驱动,创建了Connection对象,接着在main函数中创建PreparedStatement,进行数据插入,每1000条执行一次批处理,最后全部执行完毕。此示例对于理解Java数据库操作和性能优化有一定帮助。
摘要由CSDN通过智能技术生成

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.SQLException;

import java.util.ArrayList;

import java.util.Calendar;

import java.util.Date;

import java.util.HashSet;

import java.util.Iterator;

import java.util.Set;

public class test {

/*

String sDBDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

String url ="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=jihedb";

String user = "sa";

String password = "517747";

Connection conn = null;

PreparedStatement pstmt=null;

ResultSet rs = null;

public test() {

try {

Class.forName(sDBDriver);

} catch (java.lang.ClassNotFoundException e)

{

System.err.println("DBconn(): " + e.getMessage());

}

}

*/

String url="jdbc:jtds:sqlserver://localhost:1433/jihedb";

String username="sa";

String password="517747";

static Connection conn=null;

PreparedStatement pstmt=null;

//构造函数

public test()

{

try{

Class.forName("net.sourceforge.jtds.jdbc.Driver");

DriverManager.registerDriver(new net.sourceforge.jtds.jdbc.Driver());

conn=DriverManager.getConnection(url,username,password);

}catch(ClassNotFoundException e)

{

e.printStackTrace();

}catch(SQLException e)

{

e.printStackTrace();

}

}

//main()函数

public static void main(String args[]) throws SQLException{

test m=new test();

PreparedStatement ps =conn.prepareStatement( "INSERT into code values (?,?)");

Date t=(Calendar.getInstance()).getTime();

Set s=new HashSet();

Date tt=(Calendar.getInstance()).getTime();

System.out.print("插入开始"+tt);

int count=0;

//LinkedList v=new LinkedList();

ArrayList v=new ArrayList();

for(int i=1;i<1000000;i++){

v.add(i);

}

System.out.println("长度"+v.size());

Iterator vv=v.iterator();

while(vv.hasNext()){

ps.setObject(1,vv.next());

ps.setString(2, "0");

ps.addBatch();

count+=1;

if(count%1000==0)

{

ps.executeBatch();

}

}

ps.executeBatch();

Date ttt=(Calendar.getInstance()).getTime();

System.out.print("结束"+ttt);

}

}

发表于 2007-08-28 08:44 苏醄 阅读(302) 评论(1)  编辑  收藏 所属分类: Code

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值