给JDBC添加数据源


package day03;

import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.util.Random;
import org.apache.commons.dbcp.BasicDataSource;
import tarena.util.DBUtil;

public class JDBCTest3 {
public static void main(String[] args) throws Exception {
test3();
}
static void test3() throws Exception {
// DBCP API
BasicDataSource ds =
new BasicDataSource();
ds.setUrl("jdbc:oracle:thin:@192.168.0.26:1521:tarena");
ds.setDriverClassName("oracle.jdbc.OracleDriver");
ds.setUsername("sd1005");
ds.setPassword("sd1005");
ds.setInitialSize(3);
ds.setMaxActive(10);
ds.setMaxIdle(3);
ds.setMaxWait(5000);
ds.setMaxOpenPreparedStatements(10);
// 测试sql select sysdate from dual
// 最大连接时间
ds.setDefaultAutoCommit(false);
Connection con = ds.getConnection();
System.out.println(con.getClass());
con.close(); // 不断开,而是归还连接池
long l = System.currentTimeMillis();
for(int i=0;i<1000;i++) {
ds.getConnection().close();
}
System.out.println(
System.currentTimeMillis()-l );
}

static void test2() throws Exception {
long l = System.currentTimeMillis();
//for(int i=0;i<10;i++) {
DBUtil.close(DBUtil.open(), null,null);
//}
System.out.println(
System.currentTimeMillis()-l );
}
static void test1(File file) throws Exception {
Connection con = null;
PreparedStatement pstmt = null;
try {
con = DBUtil.openInThread();
pstmt = con.prepareStatement(
" insert into "+
" gallery(id, pic) " +
" values(?,?)");
pstmt.setInt(1,
new Random(99999999).nextInt());
// oracle jdbc 10
pstmt.setBinaryStream(2, new FileInputStream(file));
pstmt.executeUpdate();
} finally {
DBUtil.closeInThread();
}
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值