常见的数据库有:
DBCP是Apache提供的数据库连接池,速度相对c3p0较快,但因自身存在BUG,Hibernate3已不再提供支持
C3P0是一个开源组织提供的一个数据库连接池,速度相对较慢,稳定性还可以
Druid是阿里提供的数据库连接池,据说集DBCP、C3P0、Proxool优点于一身的数据库连接池。
Druid(德鲁伊)数据源
Druid是阿里巴巴开源平台上的一个数据库连接池实现,它结合了DBCP、C3P0、Proxool等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池,据说是目前最好的连接池。
**
* Base: 通用
* Dao: DataBase Access Object 数据库访问对象
* @version
public class BaseDao {
private String driver;
private String url;
private String username;
private String password;
/**
* 构造方法:传入驱动和连接字符串
* @param driver 驱动字符串
* @param url 连接字符串
* @param username 数据库连接账号
* @param password 数据库连接密码
*/
public BaseDao(final String driver, String url, String username, String password) {
try {
Class.forName(driver);
} catch (ClassNotFoundException e) {
System.out.println("数据库驱动装载失败,系统强制退出");
System.exit(-1);//关闭虚拟机
}
this.url = url;
this.username = username;
this.password = password;
}
/**
* 自定义方法:获取连接对象
* @return 连接对象
* @throws SQLException
*/
private Connection getCon() throws SQLException {
return DriverManager.getConnection(url,username,password);
}
final String DRIVER = "com.mysql.jdbc.Driver";
final String URL = "jdbc:mysql://localhost:3306/DATABASENAEMl?useUnicode=true&characterEncoding=utf-8&useSSL=true";
final String USERNAME = "root";
final String PASSWORD = "123456";
BaseDao bd = new BaseDao(DRIVER,URL,USERNAME,PASSWORD);