ホームページ データベース mysql チュートリアル C3P0 接続プールの詳細な紹介

C3P0 接続プールの詳細な紹介

Jul 27, 2017 pm 03:48 PM
dbutils jdbc 接続する

C3P0接続プール

C3P0接続プールを作成するためのツールクラス
* 接続用の標準インターフェース:
* javax.sql.DataSourceインターフェース
* インターフェースの実装クラスオブジェクト
* ComboPooledDataSource
* メンバーにComboPooledDataSourceオブジェクトを作成location
* 静的コード ブロックを使用して、ComboPooledDataSource の 4 つの大量のデータ接続情報を設定します
* Connection オブジェクトを返す静的メソッドを作成します
* リソースを解放する静的メソッドを作成します

 1 public class C3P0Utils { 2     //成员位置创建ComboPooledDataSource对象 3     private static ComboPooledDataSource dataSource = new ComboPooledDataSource(); 4      5     //使用静态代码块给ComboPooledDataSource设置4大数据量连接信息 6     static{ 7         try { 8             dataSource.setDriverClass("com.mysql.jdbc.Driver"); 9             dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/mybase4");10             dataSource.setUser("root");11             dataSource.setPassword("root");12         } catch (Exception e) {13             throw new RuntimeException("设置连接信息失败!");14         }15     }16     17     //创建一个静态方法返回Connection对象18     public static Connection getConnection(){19         try {20             return dataSource.getConnection();21         } catch (SQLException e) {22             throw new RuntimeException("获取数据库连接信息失败!");23         }24     }25     26     //定义一个释放资源的方法27         public static void close(ResultSet rs,Statement stat,Connection conn){28             if(rs!=null){29                 try {30                     rs.close();31                 } catch (SQLException e) {32                     e.printStackTrace();33                 }34             }35             if(stat !=null){36                 try {37                     stat.close();38                 } catch (SQLException e) {39                     e.printStackTrace();40                 }41             }42             if(conn != null){43                 try {44                     conn.close();45                 } catch (SQLException e) {46                     e.printStackTrace();47                 }48             }49         }50 }
ログイン後にコピー

読み取り用の C3P0 ツール クラスを作成しますXML設定ファイル

 1 public class C3P0UtilsReadXML { 2     //成员位置创建ComboPooledDataSource对象 3     private static ComboPooledDataSource dataSource = new ComboPooledDataSource(); 4      5     //使用静态代码块给ComboPooledDataSource设置4大数据量连接信息 6     /*static{ 7         try { 8             dataSource.setDriverClass("com.mysql.jdbc.Driver"); 9             dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/mybase4");10             dataSource.setUser("root");11             dataSource.setPassword("root");12         } catch (Exception e) {13             throw new RuntimeException("设置连接信息失败!");14         }15     }*/16     17     //创建一个返回ComboPooledDataSource的方法18     public static DataSource getDataSource(){19         return dataSource;20     }21     22     //创建一个静态方法返回Connection对象23     public static Connection getConnection(){24         try {25             return dataSource.getConnection();26         } catch (SQLException e) {27             throw new RuntimeException("获取数据库连接信息失败!");28         }29     }30     31     //定义一个释放资源的方法32         public static void close(ResultSet rs,Statement stat,Connection conn){33             if(rs!=null){34                 try {35                     rs.close();36                 } catch (SQLException e) {37                     e.printStackTrace();38                 }39             }40             if(stat !=null){41                 try {42                     stat.close();43                 } catch (SQLException e) {44                     e.printStackTrace();45                 }46             }47             if(conn != null){48                 try {49                     conn.close();50                 } catch (SQLException e) {51                     e.printStackTrace();52                 }53             }54         }55 }
ログイン後にコピー

DBCP接続プール

DBCP接続プールを作成するためのツールクラス
* 接続用の標準インターフェース:
* javax.sql.DataSourceインターフェース
* インターフェースの実装クラスオブジェクト
* BasicDataSource
* getConnection メソッドをオーバーライドする

 1 public class DBCPUtils { 2     //创建连接池的实现类对象 3     private static BasicDataSource dataSource = new BasicDataSource(); 4      5     //设置连接数据库的4大变量,使用BasicDataSource中的set方法设置 6     static{ 7         //设置注册的驱动信息 8         dataSource.setDriverClassName("com.mysql.jdbc.Driver"); 9         //设置Url10         dataSource.setUrl("jdbc:mysql://localhost:3306/mybase4");11         //设置用户名12         dataSource.setUsername("root");13         //设置密码14         dataSource.setPassword("root");15         //可选信息16         //dataSource.setInitialSize(100);17         //dataSource.setMaxActive(1000);18     }19     20     //创建获取数据库连接对象的方法21     public static Connection getConnection(){22         try {23             return dataSource.getConnection();24         } catch (SQLException e) {25             throw new RuntimeException("获取数据库连接对象失败");26         }27     }28     29     //定义一个释放资源的方法30     public static void  close(ResultSet rs,Statement stat,Connection conn){31         if(rs!=null){32             try {33                 rs.close();34             } catch (SQLException e) {35                 e.printStackTrace();36             }37         }38         if(stat !=null){39             try {40                 stat.close();41             } catch (SQLException e) {42                 e.printStackTrace();43             }44         }45         if(conn != null){46             try {47                 conn.close();48             } catch (SQLException e) {49                 e.printStackTrace();50             }51         }52     }53 }
ログイン後にコピー

設定ファイルの読み取り方法

 1 /* 2  * 创建DBCP连接池工具类 3  * 使用读取配置文件的方式 4  * DBCP中有一个工厂类BasicDataSourceFactory 5  * 工厂类中有一个静态方法 6  * static DataSource createDataSource(Properties prop) 7  * 此方法返回的就是DataSource接口的实现类对象BasicDataSource 8  * 
 9  * 创建Propertis集合+IO技术读取配置文件10  * 把配置文件传入BasicDataSourceFactory静态方法createDataSource中11  */12 public class DBCPUtilsReadConfig {13     //创建DataSource变量14     private static DataSource dataSource;15     16     static{17         try {18             //创建Propertis集合+IO技术读取配置文件19             //使用类加载器,扫描包下的文件20             InputStream is = DBCPUtilsReadConfig.class.getClassLoader()21                     .getResourceAsStream("dbcpconfig.properties");22             //创建Propertis集合23             Properties prop = new Properties();24             prop.load(is);25             //把配置文件传入BasicDataSourceFactory静态方法createDataSource中26             dataSource = BasicDataSourceFactory.createDataSource(prop);27         } catch (Exception e) {28             throw new RuntimeException("读取配置文件失败");29         }30     }31     32     //创建获取数据库连接对象的方法33     public static Connection getConnection(){34         try {35             return dataSource.getConnection();36         } catch (SQLException e) {37             throw new RuntimeException("获取数据库连接对象失败");38         }39     }40     41     //定义一个释放资源的方法42     public static void  close(ResultSet rs,Statement stat,Connection conn){43         if(rs!=null){44             try {45                 rs.close();46             } catch (SQLException e) {47                 e.printStackTrace();48             }49         }50         if(stat !=null){51             try {52                 stat.close();53             } catch (SQLException e) {54                 e.printStackTrace();55             }56         }57         if(conn != null){58             try {59                 conn.close();60             } catch (SQLException e) {61                 e.printStackTrace();62             }63         }64     }65 }
ログイン後にコピー


* DBUtils ツールクラスを使用してデータベーステーブルを追加、削除、変更、確認する
* DBUtils ツールクラスの機能: JDBC 開発を簡素化する (6 ステップ)
*
* DBUtils には 3 つのコア クラスがあります
* 1.QueryRunner: QueryRunner のメソッドを使用して、データベースの追加、削除、変更、クエリを実行します
* 2.DbUtils: リソースを解放するための多数のメソッドを提供します
* 3.ResultSetHandler インターフェイス:クエリ結果セットを処理するためのメソッドを提供します
*
* QueryRunner クラス
* コンストラクター:
* QueryRunner() 空のパラメーター コンストラクター
* update メソッドと query メソッドを呼び出すときは、Connection オブジェクトを渡す必要があります
* QueryRunner (DataSource ds) DataSource データベース接続プールを持つコンストラクター
* 更新の呼び出し クエリ メソッドを呼び出すと、QueryRunner は DataSource 実装クラス オブジェクトからデータベース接続オブジェクトを自動的に取得し、使用後に自動的に返します
* メンバー メソッド:
* を実行するメンバー メソッドを実行します追加、削除、変更
* int update(Connection conn, String sql, Object ... params) 追加、削除、変更の実行に使用される SQL
* int update(String sql, Object... params) 実行に使用される SQL追加、削除、変更
* パラメータ:
* 接続 conn: データベース接続オブジェクト
* 文字列 sql: 結合された SQL ステートメントには、? プレースホルダーを使用できます
* オブジェクト... params: ? 、 Object[] を使用できます
* 戻り値:
* int: 実行される有効な行の数
* クエリ メンバー メソッドを実行
* T query(Connection conn, String sql, ResultSetHandler rsh 、オブジェクト... params)
* T query(String sql, ResultSetHandler rsh, Object ... params)
* パラメーター:
* 接続 conn: データベース接続オブジェクト
* 文字列 sql: spliced sql ステートメント、使用できますか? プレースホルダー
* Object... params:? プレースホルダーの実際のパラメーター、使用できます Object[]
* ResultSetHandler クエリ後に結果セットを保存するために使用されます。 9 種類の ResultSetHandler 実装クラスのオブジェクト
* 戻り値:
* T: 渡される ResultSetHandler 実装クラスは異なり、返される結果セットも異なります。返されます。

以上がC3P0 接続プールの詳細な紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Win11 ゲームパッド接続完全ガイド Win11 ゲームパッド接続完全ガイド Jan 02, 2024 pm 05:26 PM

最新の win11 システムにアップデートした後、多くのユーザーがゲームをプレイするためにコントローラーを接続する方法がわかりません。そのため、今日は win11 コントローラーの接続に関する詳細なチュートリアルをお届けしました。まだ接続が完了していない場合は、操作方法を見てみましょう。 win11 でコントローラーを接続する方法: 1. 下の [スタート] をクリックし、Windows の設定に入り、[コントロール パネル] を開きます。 2. 入力すると、「デバイスとプリンターの表示」が表示されますので、入力します。 3. この時点で、コントローラー デバイスに関する情報が表示され、接続するだけです。 4. 接続に成功すると「√」が表示され、接続が完了します。

win7プリンターに接続できませんエラーコード0x0000011b win7プリンターに接続できませんエラーコード0x0000011b Dec 26, 2023 pm 10:01 PM

さまざまな印刷操作のためにコンピューターを使用してプリンターに接続する必要があることがよくありますが、一部のユーザーは、win7 がプリンター 0x0000011b に接続できないという問題に遭遇することがあります。 win7 はプリンター 0x0000011b1 に接続できません。ショートカット キー「win+r」、「regedit」と入力します。 2. 次のパス「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print」を見つけます。 3. 右クリックして新しい値「DWORD ( 32 ビット) の値 (D) を入力し、値を 0 に設定します。新しいプロジェクトに「RpcAuthnLevelPri」という名前を付けます。

Windows 11 でネットワーク接続の詳細とステータスを確認する方法 Windows 11 でネットワーク接続の詳細とステータスを確認する方法 Sep 11, 2023 pm 02:17 PM

ネットワーク接続が適切に機能していることを確認するため、または問題を解決するために、Windows 11 のネットワーク接続の詳細を確認する必要がある場合があります。これにより、IP アドレス、MAC アドレス、リンク速度、ドライバーのバージョンなどのさまざまな情報を表示できます。このガイドでは、その方法を説明します。 Windows 11 でネットワーク接続の詳細を確認するにはどうすればよいですか? 1. 「設定」アプリを使用し、+ キーを押して Windows の設定を開きます。 WindowsI 次に、左側のペインで [ネットワークとインターネット] に移動し、ネットワークの種類を選択します。この場合、これはイーサネットです。ワイヤレス ネットワークを使用している場合は、代わりに Wi-Fi ネットワークを選択します。画面の下部に次のように表示されます。

体脂肪計の接続方法 体脂肪計の接続方法 Mar 07, 2024 pm 04:50 PM

Keep 体脂肪計の接続方法 Keep には特別に設計された体脂肪計がありますが、ほとんどのユーザーは Keep 体脂肪計の接続方法を知りません。エディターがユーザーにもたらすもの、興味のあるユーザーは見に来てください! Keep 体脂肪計の接続方法 1. まず Keep ソフトウェアを開き、メイン ページに移動し、右下隅の [マイ] をクリックして、[スマート ハードウェア] を選択します; 2. 次に、[マイ スマート デバイス] ページで、中央の[デバイスの追加]ボタンをクリックします; 3、インターフェイスを追加するデバイスを選択し、[スマート体脂肪/体重計]を選択します; 4.デバイスモデルの選択ページで、[体脂肪スケールを維持する]をクリックしますオプション; 5. 最後に、以下のインターフェイスで、最後に下部の[今すぐ追加]

プリンターのエラー コード 0x0000011b は何を意味しますか? プリンターのエラー コード 0x0000011b は何を意味しますか? Feb 18, 2024 pm 10:02 PM

プリンターに接続するときの 0x0000011b は何を意味しますか? ユーザーは、コンピューター、ラップトップ、またはその他のデバイスを使用するときに、さまざまなエラー コードに遭遇することがよくあります。このうち、0x0000011b は一般的なプリンター接続エラーコードです。では、プリンター 0x0000011b の接続は何を意味するのでしょうか?まず、プリンター接続の基本原理を理解する必要があります。コンピューターからファイルを印刷する必要がある場合、通常はプリンターをコンピューターに接続して、両者の間でデータを転送する必要があります。この接続は次の方法で行うことができます

共有プリンターがプリンターに接続できない 共有プリンターがプリンターに接続できない Feb 22, 2024 pm 01:09 PM

デジタル時代の発展に伴い、共有プリンターは現代のオフィス環境に欠かせないものとなっています。しかし、場合によっては共有プリンターに接続できないという問題が発生し、作業効率に影響を与えるだけでなく、トラブルが続発してしまうこともあります。この記事は、共有プリンターがプリンターに接続できない理由と解決策を探ることを目的としています。共有プリンタがプリンタに接続できない理由は数多くありますが、最も一般的なのはネットワークの問題です。共有プリンターとプリンター間のネットワーク接続が不安定または切断されると、正常に動作できなくなります。

Windows 10 でネットワーク接続の制限を解決する方法 Windows 10 でネットワーク接続の制限を解決する方法 Feb 19, 2024 pm 09:20 PM

Win10 でネットワーク接続が制限されている場合の解決策 テクノロジーの急速な発展に伴い、インターネットは人々の生活に欠かせないものになりました。ただし、Windows 10 オペレーティング システムを使用しているコンピューターでインターネットに接続するときに、接続の制限などの問題が発生することがあります。この場合、Webページにアクセスしたり、ファイルをダウンロードしたり、ネットワーク機能を正常に使用することができなくなります。では、この問題を解決する方法はあるのでしょうか?この記事では、いくつかの一般的な解決策を紹介します。 1. ネットワーク接続設定を確認します。

OnePlus ウォッチを Bluetooth ヘッドセットに接続する方法_OnePlus ウォッチを Bluetooth ヘッドセットに接続する方法 OnePlus ウォッチを Bluetooth ヘッドセットに接続する方法_OnePlus ウォッチを Bluetooth ヘッドセットに接続する方法 Mar 23, 2024 pm 01:16 PM

1. イヤホンをイヤホンボックスに入れて蓋を開けたままにし、ボックスのボタンを長押ししてイヤホンのペアリング状態にします。 2. 時計の音楽機能をオンにして Bluetooth ヘッドフォンを選択するか、時計の設定機能で Bluetooth ヘッドフォンを選択します。 3. 正常にペアリングするウォッチのヘッドセットを選択します。

See all articles