|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.sql.DriverManager
public class DriverManager
一連の JDBC ドライバを管理するための基本的なサービスです。
注: JDBC 2.0 API で新しく追加された DataSource インタフェースを使用してデータソースに接続することも可能です。データソースへの接続時には DataSource オブジェクトの使用をお勧めします。
DriverManager クラスは、初期化時に "jdbc.drivers" システムプロパティーで参照されるドライバクラスをロードしようとします。これにより、ユーザーはアプリケーションで使用する JDBC ドライバをカスタマイズできます。たとえば、~/.hotjava/properties ファイルで次の項目を指定します。
jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
DriverManager メソッド getConnection と getDrivers は、Java Standard Edition サービスプロバイダメカニズムをサポートするように拡張されました。JDBC 4.0 ドライバは、ファイル META-INF/services/java.sql.Driver を含める必要があります。このファイルには、java.sql.Driver の JDBC ドライバ実装の名前が含まれます。たとえば my.sql.Driver クラスをロードするために、META-INF/services/java.sql.Driver ファイルに次のエントリが含まれます。
my.sql.Driver
アプリケーションでは、Class.forName() を使用して JDBC ドライバを明示的にロードする必要がなくなりました。現在 Class.forName() を使用して JDBC ドライバをロードする既存のプログラムは、変更なしで動作し続けます。
getConnection メソッドが呼び出されると、DriverManager は、初期化時にロードされたドライバや、現アプレットあるいはアプリケーションと同じクラスローダーを使用して明示的にロードされたドライバの中から適切なドライバを探そうとします。
Java 2 SDK, Standard Edition, Version 1.3 以降は、ログストリームは、適切なアクセス権が許可されている場合に限り設定できます。通常これは、ツール PolicyTool を使用して行われます。 このツールは、permission java.sql.SQLPermission "setLog" を許可するのに使用できます。
Driver,
Connection| メソッドの概要 | |
|---|---|
static void |
deregisterDriver(Driver driver)
DriverManager のリストからドライバを除外します。 |
static Connection |
getConnection(String url)
指定されたデータベースの URL への接続を試みます。 |
static Connection |
getConnection(String url,
Properties info)
指定されたデータベースの URL への接続を試みます。 |
static Connection |
getConnection(String url,
String user,
String password)
指定されたデータベースの URL への接続を試みます。 |
static Driver |
getDriver(String url)
指定された URL を認識するドライバを獲得しようとします。 |
static Enumeration<Driver> |
getDrivers()
現在の呼び出し元がアクセスしている、ロードされているすべての JDBC ドライバの列挙を取得します。 |
static int |
getLoginTimeout()
データベースにログインしているときに、ドライバが待つことのできる最長の時間を秒数で取得します。 |
static PrintStream |
getLogStream()
推奨されていません。 |
static PrintWriter |
getLogWriter()
ログライターを取得します。 |
static void |
println(String message)
現在の JDBC ログストリームにメッセージを印刷します。 |
static void |
registerDriver(Driver driver)
指定されたドライバを DriverManager に登録します。 |
static void |
setLoginTimeout(int seconds)
データベースに接続しようとしているときに、ドライバが待つことのできる最長の時間を秒数で設定します。 |
static void |
setLogStream(PrintStream out)
推奨されていません。 |
static void |
setLogWriter(PrintWriter out)
DriverManager およびすべてのドライバが使用する、ログおよびトレースの PrintWriter オブジェクトを設定します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| メソッドの詳細 |
|---|
public static PrintWriter getLogWriter()
getLogWriter メソッドおよび setLogWriter メソッドは、推奨されない get/setlogStream メソッドの代わりに使用します。
java.io.PrintWriter オブジェクトsetLogWriter(java.io.PrintWriter)public static void setLogWriter(PrintWriter out)
DriverManager およびすべてのドライバが使用する、ログおよびトレースの PrintWriter オブジェクトを設定します。
setLogWriter メソッドの導入によって、マイナーバージョンの管理の問題が発生します。SetLogWriter メソッドは getLogStream によって返される PrintStream オブジェクトを生成できません。 Java プラットフォームには逆方向の変換はありません。そのため、新しいアプリケーションで、setLogWriter を使用し、getLogStream を使用している JDBC 1.0 ドライバをも使用しているものは、そのドライバによって記述されたデバッグ情報を見ることができません。
Java 2 SDK, Standard Edition, Version 1.3 リリース以降では、ログストリームを設定する前に、SQLPermission オブジェクトがあるかどうかをこのメソッドがチェックします。SecurityManager が存在し、その checkPermission メソッドがログライターの設定を許可しない場合、このメソッドは java.lang.SecurityException をスローします。
out - 新しいログおよびトレースの PrintStream オブジェクト。ログおよびトレースを無効にする場合は null
SecurityException - セキュリティーマネージャーが存在し、その checkPermission メソッドがログライターの設定を拒否した場合SecurityManager.checkPermission(java.security.Permission),
getLogWriter()
public static Connection getConnection(String url,
Properties info)
throws SQLException
DriverManager は、登録された JDBC ドライバの集合から適切なドライバを選択しようとします。
url - jdbc:subprotocol:subname 形式のデータベース URLinfo - 接続引数としての、任意の文字列タグおよび値のペアのリスト。通常は、少なくとも "user" プロパティーと "password" プロパティーは指定しなければならない
SQLException - データベースアクセスエラーが発生した場合
public static Connection getConnection(String url,
String user,
String password)
throws SQLException
DriverManager は、登録された JDBC ドライバの集合から適切なドライバを選択しようとします。
url - jdbc:subprotocol:subname 形式のデータベース URLuser - その代理として接続が行われるデータベースユーザーpassword - ユーザーのパスワード
SQLException - データベースアクセスエラーが発生した場合
public static Connection getConnection(String url)
throws SQLException
DriverManager は、登録された JDBC ドライバの集合から適切なドライバを選択しようとします。
url - jdbc:subprotocol:subname 形式のデータベース URL
SQLException - データベースアクセスエラーが発生した場合
public static Driver getDriver(String url)
throws SQLException
DriverManager は、登録された JDBC ドライバの集合から適切なドライバを選択しようとします。
url - jdbc:subprotocol:subname 形式のデータベース URL
Driver オブジェクト
SQLException - データベースアクセスエラーが発生した場合
public static void registerDriver(Driver driver)
throws SQLException
DriverManager に登録します。新しくロードされるドライバクラスは registerDriver メソッドを呼び出し、それを DriverManager に通知しなければなりません。
driver - DriverManager に登録される新しい JDBC ドライバ
SQLException - データベースアクセスエラーが発生した場合
public static void deregisterDriver(Driver driver)
throws SQLException
DriverManager のリストからドライバを除外します。アプレットは、自身のクラスローダーからドライバを除くことだけが可能です。
driver - 除外する JDBC ドライバ
SQLException - データベースアクセスエラーが発生した場合public static Enumeration<Driver> getDrivers()
注: ドライバのクラス名は、d.getClass().getName() を使用して見つけることができます。
public static void setLoginTimeout(int seconds)
seconds - ログイン時間制限 (秒単位)。ゼロは制限なしgetLoginTimeout()public static int getLoginTimeout()
setLoginTimeout(int)public static void setLogStream(PrintStream out)
DriverManager およびすべてのドライバが使用する、ログおよびトレースの PrintStream を設定します。
Java 2 SDK, Standard Edition, Version 1.3 リリースでは、ログストリームを設定する前に、SQLPermission オブジェクトがあるかどうかをこのメソッドがチェックします。SecurityManager が存在し、その checkPermission メソッドがログライターの設定を許可しない場合、このメソッドは java.lang.SecurityException をスローします。
out - ログおよびトレースの新しい PrintStream。無効にする場合は null
SecurityException - セキュリティーマネージャーが存在し、その checkPermission メソッドがログストリームの設定を拒否した場合SecurityManager.checkPermission(java.security.Permission),
getLogStream()public static PrintStream getLogStream()
DriverManager およびすべてのドライバが使用する、ログおよびトレースの PrintStream を取得します。
nullsetLogStream(java.io.PrintStream)public static void println(String message)
message - ログメッセージまたはトレースメッセージ
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。