package com.sun.cts.tests.jdbc.help_doc.lian_jie_chi;
import static org.junit.Assert.assertNotNull;
import java.io.File;
import java.io.FileInputStream;
/**************************************************
*这个例子演示建立连接池
**************************************************/
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;
import org.junit.Test;
import com.oscar.jdbcx.Jdbc3PoolingDataSource;
import com.oscar.jdbcx.optional.PoolingDataSource;
public class ConnectionPoolTest {
public String DBUSER = "";
public String DBPASSWD = "";
public String DBURL = "";
public String DBDRIVER = "";
public PoolingDataSource oscarPoolingDataSource = null;
Connection con;
private void initPoolingDataSource() {
Properties prop = new Properties();
try {
FileInputStream in = new FileInputStream(
"." + File.separator + "testFile" + File.separator + "cts_env.properties");
prop.load(in);
in.close();
} catch (Exception e) {
e.printStackTrace();
}
//从配置文件中读取
// DBUSER = "sysdba";
DBUSER = prop.getProperty("DBUSER");
// DBPASSWD = "szoscar55";
DBPASSWD = prop.getProperty("DBPASSWD");
// DBURL = "jdbc:oscar://localhost:2003/osrdb";
DBURL = prop.getProperty("DBURL");
// DBDRIVER = "com.oscar.Driver";
DBDRIVER = prop.getProperty("DBDRIVER");
try {
Class.forName(DBDRIVER);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
oscarPoolingDataSource = new Jdbc3PoolingDataSource();
oscarPoolingDataSource.setUrl(DBURL);
oscarPoolingDataSource.setUser(DBUSER);
oscarPoolingDataSource.setPassword(DBPASSWD);
oscarPoolingDataSource.setInitialConnections(2);
oscarPoolingDataSource.setMaxConnections(2);
}
/*
* 取到的连接和普通连接一样,可以直接使用
*/
@Test
public void initConnection() throws SQLException {
initPoolingDataSource();
con = oscarPoolingDataSource.getPooledConnection().getConnection();
assertNotNull(con);
}
public Connection getConnection() {
return con;
}
public static void main(String args[]) {
Connection con;
con = new ConnectionPoolTest().getConnection();
}
}