SmartPool is a connection-pooling component that is modeled on connection pooling features provided by an Application Server. It makes an attempt to solve critical issues like connection leaks, connection blocking, open JDBC objects like Statements, PreparedStatements etc. Features of SmartPool include support for multiple pools, automatic closing of associated JDBC objects, detect connection leaks based on configurable time-outs, track connection usage , wrap SmartPool to an existing pool, monitor run time status of the pools apart from conventional pooling support.