次は com.mysql.cj.jdbc.MysqlConnectionPoolDataSource
の使用方法であり、比較的簡単です。かなりの数の API がありますが、そのほとんどは使用されていません。
package com.funtest.groovytest import com.funtester.frame.SourceCode import com.mysql.cj.jdbc.MysqlConnectionPoolDataSource class MysqlPoolTe extends SourceCode { public static void main(String[] args) { def query = "select * from testers limit 2;" def source = new MysqlConnectionPoolDataSource() source.setServerName("localhost") source.setPort(3306) source.setUser("root") source.setPassword("root123456") source.setDatabaseName("funtester") source.setAllowMultiQueries(true) def connection = source.getPooledConnection() def statement = connection.getConnection().createStatement() while (true) { sleep(1) def query = statement.executeQuery(query) while (query.next()) { output query.getString("name") } } } }
ここには非常に簡単な落とし穴があります。それは、setURL()
と setUrl()
です。実際、両者の間に違いはありません。ただ言えるのは、古いバージョンとの互換性のためかもしれないということです。また、URL を設定した後、データベースの設定が機能しないようで、Miao Ming はデザインが非常に悪いと感じたので、上記の場合はこれら 2 つの方法を使用しませんでした。
テストしたところ、多数のスレッドを作成しても、常に接続されているスレッドは少数であることがわかりました。おそらく数秒後に再利用されるでしょうが、作成された総数はまだ非常に多くなっています。
以上がMySQL接続プール内蔵jdbcの解析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。