転載します。https://www.jianshu.com/p/381c86bdbff6
私はドルイドとdbcp2元のコードを見て、彼らはすべてのストレージを接続する独自の方法を持っていることがわかりました。
ドルイド:
private volatile DruidConnectionHolder[] connections;
dbcp2
private final LinkedBlockingDeque<PooledObject<T>> idleObjects =
new LinkedBlockingDeque<PooledObject<T>>();
自分の理解に簡単な接続プールを書きました
- LinkedBlockingQueue管理データベース接続を使用して
- インタフェースはjavax.sql.DataSourceを実装
- コンフィギュレーション・デザインパターンを使用して
- 反射技術によって駆動なさい
- ドライブとの互換性6 MYSQL5
- これは、接続プールリソースの枯渇の治療戦略の構成をサポートしています
- アイドル接続実装されていないコントロール
コアソース
-
接続プールを初期化します
-
接続しなさい
-
接続解除
-
接続プーリングを使用します