[JavaWeb] Ali の Druid と c3p0 接続プール

序文

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 接続プールの接続です。

おすすめ

転載: blog.csdn.net/wang_qiu_hao/article/details/125204486