DriverManager.getConnectionドライバのロード順序
924 ワード
ビジネスにはjdbc Driverクラスがプログラムに書き換えられているためである.com.jdbc.JlinsDriverとstaticを使用して直接
DriverManagerのソースコードを確認
毎回classforNameの場合はArrayListtheDriversにドライバを順番に入れ、getConnectionのたびに1番目からロードし、1番目の戻りが正しくなければ2番目にロードし、dirver実装クラスごとにacceptsURL(String url)メソッドが現在のurlが現在のドライバに合致しているかどうかを検証します.以下のコード(IBM JDK)、java標準jdkの実現方式は多くない.
class.forName(com.jdbc.JlinsDriver);
他のビジネスニーズにより次のコードを実行する場合Class.forName("oracle.jdbc.OracleDriver");
connection = DriverManager.getConnection(firstlyUrl, info);
プログラムがcomに直接ジャンプしたことに気づいた.jdbc.JlinsDriverクラスに行きましたが、DriverManagerのソースコードを確認
毎回classforNameの場合はArrayList
for (Driver theDriver : theDrivers) {
Connection theConnection = theDriver.connect(url, info);
if (theConnection != null) {
return theConnection;
}
}