一、传统连接弊端
1.传统的JDBC数据库连接使用DriverManager来获取,每次向数据库建立连接的时候都要将Connection加载到内存中,再验证ip地址,用户名和密码(0.05s~1s)。需要数据库连接的时候,就像数据库要求一个,频繁的进行数据库连接操作将占有很多的系统资源,容易造成服务器崩溃。
2.每一次数据库连接,使用完后都要断开,假如程序出现异常而没能关闭,将会导致数据库内存泄漏,将导致重启数据库。
3.传统获取连接的方式,不能控制创建的连接数量,假如连接过多可能导致内存泄漏,MySql崩溃。
4.解决传统开发中的数据库连接问题,可以采用数据库连接池技术。
package com.jun.jdbc.datasource;
import com.jun.jdbc.utils.JDBCUtils;
import org.junit.Test;
import java.sql.Connection;
public class ConQuestion {
//连接mysql 5000次
@Test
public void testCon(){
long start = System.currentTimeMillis();
for (int i = 0; i <5000 ; i++) {
//传统的jdbc方式,得到连接
Connection connection = JDBCUtils.getConnection();
//得到PreparedStement,发送sql
//.....
//关闭
JDBCUtils.close(null,null,connection);
}
long end =System.currentTimeMillis();
System.out.println("传统方式耗时="+(end - start));//传统方式耗时=23970
}
}