步骤:
- 解析配置文件,获得连接的参数。
- 创建一个集合[连接池]。
- 用户到连接池获取连接
– 连接池空:创建连接,通过动态代理绑定连接,返回代理对象给用户。
– 连接池中有连接:直接拿一个返回给用户。 - 用户操作完成,调用close方法。
- 判断用户调用的是close方法,检查连接池最大可以保持数,如果没有到最大可保存数,将连接放入集合,不执行close方法。如果已经到最大可保存数,直接调用close方法关闭连接。
代码实现
MyDataSourceTest类:
1 | package com.自定义数据源; |
MyDataSource:自定义数据源
1 | package com.自定义数据源; |
代理类:
1 | package com.自定义数据源; |