业务场景:在我们项目中可能使用Mybatis或者Hibernate数据库持久化框架与数据库打交道,但是有时候,当操作的数据量太大或者SQL过于复杂,我们需要使用原生JDBC去完成与数据库交互操作的时候,如何获取连接呢?
public class DbHelper {
private static DbHelper instance = null;
private DbHelper() {
}
/**
* @return
* @Description: 获取实例
* @date 2017年7月28日
*/
public synchronized static DbHelper getInstance() {
if (instance == null) {
instance = new DbHelper();
}
return instance;
}
/**
* @return com.alibaba.druid.pool.DruidDataSource
* @Description: 获取数据库连接池
* @date 2017年8月2日
*/
public com.alibaba.druid.pool.DruidDataSource getDbPool() {
com.alibaba.druid.pool.DruidDataSource dataSource = SpringUtils.getBean("dataSource", com.alibaba.druid.pool.DruidDataSource.class);
return dataSource;
}
public DruidPooledConnection getConnection() {
DruidPooledConnection conn = null;
try {
conn = getDbPool().getConnection();
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
}
}
这样,我们就可以获取连接,通过JDBC去操作数据库了。
Connection connection = DbHelper.getInstance().getConnection();