目录
上文有讲述到
jdbc连接Connection类名com.mysql.cj.jdbc.ConnectionImpl
dbcp连接池Connection类名org.apache.commons.dbcp2.PoolingDataSource$PoolGuardConnectionWrapper
连接池内部是使用mysql驱动提供的Connection
连接池使用mysql连接对象进行了装饰,只对close()方法进行了增强
装饰之后的Connection的close()方法,用来把当前连接归还给池
下面围绕装饰器展开一些讨论
对象增强的手段
·继承
被增强的对象固定
增强的内容固定
·装饰者模式
被增强的对象可以切换
增强的内容固定
·动态代理(AOP)
被增强的对象可以切换
增强的内容可以切换
装饰器概念描述
继承:
class 咖啡类{}
class 加糖咖啡 extend 咖啡类{}
class 加奶咖啡 extend 咖啡类{}
class 加盐咖啡 extend 咖啡类{}
组合时
class 加糖咖啡 extend 咖啡类{}//加糖咖啡
class 加奶咖啡 extend 加糖咖啡{}//加奶、加糖咖啡
clas