在开发中跟数据库不停地打交道,总是在用连接池,大多数人也都知道连接池的好处:统一管理数据库连接,避免频繁创建和销毁连接带来的开销。但是连接池究竟是如何工作的很值得探究,了解其中的原理也有利于加深对连接池配置的理解,从而更好地进行数据库连接上的优化。

仅就我自己了解的连接池有dbcp,c3p0,以及随Tomcat 7发布的tomcat jdbc pool。这次我选择了dbcp的源码来读,网上有人说dbcp写得太复杂,好几十个类,据说tomcat jdbc pool很不错,性能强,而且简单。