-------------SOS-------------------
这是一段使用数据源获取数据库连接的代码。
为什么new JDBCUtils();初始化数据源之后,第一次获取连接的速度还是很慢呢?
有没有什么办法解决?
敬候佳音!!!!!!!!!!!!!!
------------------------------------------------------
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;public class JDBCUtils {
public static DataSource myDataSource = null;
public JDBCUtils() {
}
static{
Properties prop = new Properties();
InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");
try {
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
}
try {
myDataSource = BasicDataSourceFactory.createDataSource(prop);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection()
{
Connection conn;
try {
conn = myDataSource.getConnection();
return conn;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}}
--------------------------------
测试代码:
----------------------------
System.out.println(new Date());
new JDBCUtils();
System.out.println(new Date());
Connection conn = JDBCUtils.getConnection();
System.out.println(new Date());
Connection conn1 = JDBCUtils.getConnection();
System.out.println(new Date());
-----------------------------------------------------
执行时间
-------------------------------------
Wed May 27 16:25:30 CST 2009
Wed May 27 16:25:30 CST 2009
Wed May 27 16:26:26 CST 2009
Wed May 27 16:26:26 CST 2009
这是一段使用数据源获取数据库连接的代码。
为什么new JDBCUtils();初始化数据源之后,第一次获取连接的速度还是很慢呢?
有没有什么办法解决?
敬候佳音!!!!!!!!!!!!!!
------------------------------------------------------
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.Properties;import javax.sql.DataSource;import org.apache.commons.dbcp.BasicDataSourceFactory;public class JDBCUtils {
public static DataSource myDataSource = null;
public JDBCUtils() {
}
static{
Properties prop = new Properties();
InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("dbcpconfig.properties");
try {
prop.load(is);
} catch (IOException e) {
e.printStackTrace();
}
try {
myDataSource = BasicDataSourceFactory.createDataSource(prop);
} catch (Exception e) {
e.printStackTrace();
}
}
public static Connection getConnection()
{
Connection conn;
try {
conn = myDataSource.getConnection();
return conn;
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}}
--------------------------------
测试代码:
----------------------------
System.out.println(new Date());
new JDBCUtils();
System.out.println(new Date());
Connection conn = JDBCUtils.getConnection();
System.out.println(new Date());
Connection conn1 = JDBCUtils.getConnection();
System.out.println(new Date());
-----------------------------------------------------
执行时间
-------------------------------------
Wed May 27 16:25:30 CST 2009
Wed May 27 16:25:30 CST 2009
Wed May 27 16:26:26 CST 2009
Wed May 27 16:26:26 CST 2009
解决方案 »
- 怎么实现SWT窗口间的数据交流?
- java 做打印能指定哪台打印机打印哪个文件吗?
- 关于编码和解码
- 如何改变tomcat的端口号
- 不用星星就能回答。
- Exception in thread "main" java.lang.NoClassDefFoundError出现的原因??
- Java的拷贝和粘贴
- 如何把JTree的模型提取成一个XML文件?必给分!
- 在jbuilder5,weblogic中说需要装appserver什么的,是怎么回事?
- 为什么rs.getRow();之前要用 rs.last() ; 自学java求助
- 怎么用JAVA做三维曲线图?用jfreechart能实现吗?
- JTextArea初期表示小问题(20行代码)
getConnection()方法怎么实现的,我觉得很有可能第一次初始化是在该方法中,所以你会觉得第一次调用时慢。
还有一点,每一种连接池都会实现javax.sql.Datasource接口,具体初始化连接在哪一步,要看它怎么实现接口的。