一、类图分析
1)DataSource是用来获得连接的,包括方法getConnection()
2)DataSourceFactory是用来获得DataSource的
3)DataSource分为UnpooledDataSource和PooledDataSource
4)UnpooledDataSource每获取一个连接,就生成一个
5)PooledDataSource是有一个连接池,实现连接的复用
6)PooledDataSource生成的连接都是PooledConnection,PooledConnection是Connection的代理对象
7)PooledConnection作为Connection的代理对象,这样调用connection.close()时,将connection对象放入连接池中,而不是关闭
二、获得connection的过程