記事ディレクトリ
序文
Jdbc の 6 つのステップ、Jdbc のカプセル化、SQL インジェクションとプリコンパイル、カスタム接続プールは、基本的に 1 つのことを行っており、ツール クラス JdbcUtil をカプセル化し、それを段階的に最適化しています。自分で梱包する必要がありますか? 実際、直接使用できる既製のフレームワークがあり、市場には c3p0 や Alibaba の Druid など、一般的に使用されるオープンソース接続プールがいくつかあります。
オープンソースであるため、複数のバージョンを繰り返した後、機能はより強力になり、より使いやすくなるはずです。
1.c3p0接続プール
c3p0公式サイト参照:
①ダウンロードアドレス
クリックして c3p0 の最新バージョンをダウンロードします。
②書類の説明
ツールのマニュアルに相当しますが、そうでないとc3p0の使い方が分からないので、具体的にはどうやって使うのですか?
①ガイドバッグ
説明にある 2 つの jar パッケージを開発ツール IDEA にインポートするだけです。
④ データソースを作成する
ドキュメントにはコード テンプレートが記述されており、その中のパラメータをコピーして変更するだけで済みます。これらのパラメータは非常に馴染みのあるものです。
- mysqlドライバーのパス
- データベースの URL パス
- ユーザー名
- パスワード
私は数日前に構成ファイルについて学び、コードのスケーラビリティを高めるために、これらの共通パラメータを構成ファイルに追加しました。
設定ファイルについては誰でも思いつくので、当然公式ドキュメントにその説明があるでしょう。ドキュメントを読み続けてください。
⑤設定方法 設定
方法は 4 つありますが、最も一般的なのは xml を使用して設定する方法です。
⑥xmlファイルの設定
ファイル名は「c3p0-config.xml」の命名規則に従う必要があります。そうしないと実行できず、IDEA の src パスに配置する必要があります。
構成ファイルの記述方法に関しては、テンプレートの適用を続けますが、必要なのはプロパティを変更することだけです。
⑦データベース接続パラメータ
独自のパラメータを設定するだけです。
⑧接続プールのパラメータ
これは、特定のプロジェクトで異なるパラメータを設定するためのもので、実際、これもよく理解されています。
- InitialPoolSize: 接続プールのサイズを初期化します。
- maxIdleTime: 最大アイドル時間
- maxPoolSize: 接続プールの最大容量
- minPoolSize: 接続プールの最小容量
- maxStatements: 最大のステートメント オブジェクト
最後に、コードを記述した後、テストを実行し、データベースに接続するコードを確認します。
①c3p0 接続プールを設定します。xml
設定ファイルがある場合、設定情報を設定する必要はありません。一つ。
② コネクションプールからコネクションを取得
c3p0 コネクションプールから直接コネクションを取得します。
③プリコンパイルと処理結果
④リソースの解放
closeメソッドは本来コネクションを破棄することを意味しますが、実際にはc3p0のcloseメソッドはコネクションを破棄せずにコネクションプールに戻します。
二、Druid
ドルイド僧は GitHub で見つけることができます。
中国語訳:ドルイド僧。これは、Alibaba によってオープンソース化されたデータベース接続プールです。
Druid は現在最適なデータベース接続プールです。機能、パフォーマンス、スケーラビリティの点で他のデータベース接続プールを上回っており、毎年恒例のダブルイレブンを考えると、春節の時期に電車の切符を手に入れるのも無理はありません。
① Druid オブジェクトを作成する
その API は依然としてこれらのプロパティ設定であることがわかります。もちろん、これらは最も基本的な 4 つであり、接続プールのサイズなど、特定のプロジェクトで設定する必要があるものもあります。
②設定ファイル druid.properties
も同様の理由で、コードのスケーラビリティを向上させるために、これらのプロパティを設定ファイルに入れることができます。
xml は c3p0 で使用され、プロパティは Druid で使用されます。
設定ファイルは完成しましたが、どうやって使うのでしょうか?
①ファクトリーデザインモード
DruidDataSourceFactory、Druid データソースファクトリー、ファクトリーなので、それを通じてデータソースを直接作成できます。パラメータは設定ファイルが書き込まれ、残りのステップはデータベースに接続する日常的な操作です。 。
②コネクションプールからコネクションを取得
する ③プリコンパイルして結果を処理する
④リソースを解放
する 同様に、コネクションのcloseメソッドもDruidでは変換されています。
3. ツールのパッケージ最適化
今日は接続プールについて学びました。そのため、接続プールを JdbcUtil にカプセル化することもできます。たとえば、Druid 接続プールを使用します。
①DruidをJdbcUtilクラスにカプセル化し
、ファクトリデザインパターンを通じてデータソースを取得する
② 接続パッケージの取得
Druid データソース経由で接続を取得します
③リソースの解放
このうち、コネクションのcloseメソッドが変更され、コネクションを解放するのではなく、コネクションをコネクションプールに戻すようになりました。
JdbcUtil クラスを最適化した後、JdbcUtil クラスを使用して接続を直接取得します。これは、実際には Druid 接続プールの接続です。