注意: DataSource
インタフェースは、データ・ソースに接続するための別の方法を提供します。 データ・ソースへの接続時にはDataSource
オブジェクトの使用をお薦めします。
初期化の一環として、DriverManager
クラスは次を使用して、使用可能なJDBCドライバのロードを試行します:
- JDBCドライバの完全修飾クラス名のコロン区切りのリストを含む
jdbc.drivers
システム・プロパティ。 各ドライバは、システム・クラス・ローダー:jdbc.drivers=foo.bah.Driver:wombat.sql.Driver:bad.taste.ourDriver
- サービス・プロバイダのロード・メカニズムによってロードされる、
java.sql.Driver
クラスのサービス・プロバイダ。
- 実装上のノート:
DriverManager
初期化は遅延して実行され、スレッド・コンテキスト・クラス・ローダーを使用してサービス・プロバイダを検索します。 アプリケーションにロードされ、使用可能なドライバは、DriverManager
によるドライバの初期化をトリガーするスレッドのスレッド・コンテキスト・クラス・ローダーによって異なります。メソッド
getConnection
がコールされると、DriverManager
は、初期化時にロードされたドライバと、現在のアプリケーションと同じクラス・ローダーを使用して明示的にロードされたドライバの中から、適切なドライバを検出しようとします。- 導入されたバージョン:
- 1.1
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明static void
deregisterDriver
(Driver driver) DriverManager
の登録済ドライバ・リストから、指定されたドライバを削除します。drivers()
現在の呼出し元がアクセスできる、現在ロードされているすべてのJDBCドライバを含むストリームを取得します。static Connection
getConnection
(String url) 指定されたデータベースのURLへの接続を試みます。static Connection
getConnection
(String url, String user, String password) 指定されたデータベースのURLへの接続を試みます。static Connection
getConnection
(String url, Properties info) 指定されたデータベースのURLへの接続を試みます。static Driver
指定されたURLを認識するドライバを獲得しようとします。static Enumeration
<Driver> 現在の呼出し元がアクセスしている、現在ロードされているすべてのJDBCドライバの列挙を取得します。static int
データベースにログインしているときに、ドライバが待つことのできる最長の時間を秒数で取得します。static PrintStream
非推奨。static PrintWriter
ログ・ライターを取得します。static void
現在のJDBCログ・ストリームにメッセージを印刷します。static void
registerDriver
(Driver driver) 指定されたドライバをDriverManager
に登録します。static void
registerDriver
(Driver driver, DriverAction da) 指定されたドライバをDriverManager
に登録します。static void
setLoginTimeout
(int seconds) 識別された後のドライバがデータベースに接続しようとするときの最大待機時間(秒単位)を設定します。static void
setLogStream
(PrintStream out) 非推奨。setLogWriter
を使用static void
setLogWriter
(PrintWriter out) DriverManager
およびすべてのドライバが使用する、ログおよびトレースのPrintWriter
オブジェクトを設定します。
-
メソッドの詳細
-
getLogWriter
public static PrintWriter getLogWriter()ログ・ライターを取得します。 非推奨のget/setlogStream
メソッドの代わりにgetLogWriter
メソッドおよびsetLogWriter
メソッドを使用するべきです。- 戻り値:
java.io.PrintWriter
オブジェクト- 導入されたバージョン:
- 1.2
- 関連項目:
-
setLogWriter
public static void setLogWriter(PrintWriter out) DriverManager
およびすべてのドライバが使用する、ログおよびトレースのPrintWriter
オブジェクトを設定します。セキュリティ・マネージャが存在する場合、その
checkPermission
メソッドが最初にSQLPermission("setLog")
権限でコールされ、コール元がsetLogWriter
をコールできるかどうかが確認されます。- パラメータ:
out
- 新しいログおよびトレースのPrintStream
オブジェクト。ログおよびトレースを無効にする場合はnull
- 例外:
SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがログ・ライターの設定権限を拒否した場合。- 導入されたバージョン:
- 1.2
- 関連項目:
-
getConnection
public static Connection getConnection(String url, Properties info) throws SQLException 指定されたデータベースのURLへの接続を試みます。DriverManager
は、登録されたJDBCドライバの集合から適切なドライバを選択しようとします。ノート: プロパティが
url
の一部として指定され、Properties
オブジェクトでも指定された場合、どちらの値が優先されるかについては、実装で定義されます。 移植性を最大限にするため、アプリケーションはプロパティを一度だけ指定するようにしてください。- パラメータ:
url
- 次の形式のデータベースURL:jdbc:subprotocol:subname
info
- 接続引数としての、任意の文字列タグおよび値のペアのリスト。通常は、少なくとも「user」プロパティと「password」プロパティは指定するべき- 戻り値:
- URLへのConnection
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはurlがnull
の場合SQLTimeoutException
- ドライバが、setLoginTimeout
メソッドで指定されたタイムアウト値が経過したと判定し、少なくとも現在のデータベース接続の試みを取り消そうとしたとき
-
getConnection
public static Connection getConnection(String url, String user, String password) throws SQLException 指定されたデータベースのURLへの接続を試みます。DriverManager
は、登録されたJDBCドライバの集合から適切なドライバを選択しようとします。ノート:
user
またはpassword
プロパティがurl
の一部としても指定された場合、どちらの値が優先されるかについては、実装で定義されます。 移植性を最大限にするため、アプリケーションはプロパティを一度だけ指定するようにしてください。- パラメータ:
url
- 次の形式のデータベースURL:jdbc:subprotocol:subname
user
- その代理として接続が行われるデータベース・ユーザーpassword
- ユーザーのパスワード- 戻り値:
- URLへの接続
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはurlがnull
の場合SQLTimeoutException
- ドライバが、setLoginTimeout
メソッドで指定されたタイムアウト値が経過したと判定し、少なくとも現在のデータベース接続の試みを取り消そうとしたとき
-
getConnection
public static Connection getConnection(String url) throws SQLException 指定されたデータベースのURLへの接続を試みます。DriverManager
は、登録されたJDBCドライバの集合から適切なドライバを選択しようとします。- パラメータ:
url
- 次の形式のデータベースURL:jdbc:subprotocol:subname
- 戻り値:
- URLへの接続
- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合、またはurlがnull
の場合SQLTimeoutException
- ドライバが、setLoginTimeout
メソッドで指定されたタイムアウト値が経過したと判定し、少なくとも現在のデータベース接続の試みを取り消そうとしたとき
-
getDriver
public static Driver getDriver(String url) throws SQLException 指定されたURLを認識するドライバを獲得しようとします。DriverManager
は、登録されたJDBCドライバの集合から適切なドライバを選択しようとします。- パラメータ:
url
- 形式jdbc:subprotocol:subname
のデータベースURL- 戻り値:
- 指定されたURLに接続できるドライバを表す
Driver
オブジェクト - 例外:
SQLException
- データベース・アクセス・エラーが発生した場合
-
registerDriver
public static void registerDriver(Driver driver) throws SQLException 指定されたドライバをDriverManager
に登録します。 新しくロードされるドライバ・クラスはregisterDriver
メソッドを呼び出し、それをDriverManager
に通知するべきです。 ドライバが現在登録されている場合、アクションは実行されません。- パラメータ:
driver
-DriverManager
に登録される新しいJDBCドライバ- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合NullPointerException
-driver
がnullの場合
-
registerDriver
public static void registerDriver(Driver driver, DriverAction da) throws SQLException 指定されたドライバをDriverManager
に登録します。 新しくロードされるドライバ・クラスはregisterDriver
メソッドを呼び出し、それをDriverManager
に通知するべきです。 ドライバが現在登録されている場合、アクションは実行されません。- パラメータ:
driver
-DriverManager
に登録される新しいJDBCドライバda
-DriverManager#deregisterDriver
が呼び出されたときに使用するDriverAction
実装- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合NullPointerException
-driver
がnullの場合- 導入されたバージョン:
- 1.8
-
deregisterDriver
public static void deregisterDriver(Driver driver) throws SQLException DriverManager
の登録済ドライバ・リストから、指定されたドライバを削除します。削除するドライバとして
null
値が指定された場合、アクションは実行されません。セキュリティ・マネージャが存在する場合、その
checkPermission
メソッドが最初にSQLPermission("deregisterDriver")
権限でコールされ、コール元がJDBCドライバの登録解除を許可されていることが確認されます。指定されたドライバが登録済ドライバ・リストにない場合、アクションは実行されません。 ドライバが見つからなかった場合、そのドライバは登録済ドライバ・リストから削除されます。
JDBCドライバの登録時に
DriverAction
インスタンスが指定された場合は、登録済ドライバ・リストからドライバが削除される前に、その登録解除メソッドが呼び出されます。- パラメータ:
driver
- 削除するJDBCドライバ- 例外:
SQLException
- データベース・アクセス・エラーが発生した場合SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがドライバを登録解除するためのアクセス権を拒否した場合。- 関連項目:
-
getDrivers
public static Enumeration<Driver> getDrivers()現在の呼出し元がアクセスしている、現在ロードされているすべてのJDBCドライバの列挙を取得します。ノート: ドライバのクラス名は、
d.getClass().getName()
を使用して見つけることができます- 戻り値:
- 呼出し元のクラス・ローダーによってロードされるJDBCドライバのリスト
- 関連項目:
-
drivers
-
setLoginTimeout
public static void setLoginTimeout(int seconds) 識別された後のドライバがデータベースに接続しようとするときの最大待機時間(秒単位)を設定します。- パラメータ:
seconds
- ログイン時間制限(秒単位)。ゼロは制限なし- 関連項目:
-
getLoginTimeout
public static int getLoginTimeout()データベースにログインしているときに、ドライバが待つことのできる最長の時間を秒数で取得します。- 戻り値:
- ドライバのログインのタイム・リミット(秒単位)
- 関連項目:
-
setLogStream
@Deprecated(since="1.2") public static void setLogStream(PrintStream out) 非推奨。setLogWriter
を使用DriverManager
およびすべてのドライバが使用する、ログおよびトレースのPrintStreamを設定します。セキュリティ・マネージャが存在する場合、その
checkPermission
メソッドが最初にSQLPermission("setLog")
権限でコールされ、コール元がsetLogStream
をコールできるかどうかが確認されます。- パラメータ:
out
- ログおよびトレースの新しいPrintStream。無効にする場合はnull
に設定する- 例外:
SecurityException
- セキュリティ・マネージャが存在し、そのcheckPermission
メソッドがログ・ストリームの設定権限を拒否した場合。- 関連項目:
-
getLogStream
@Deprecated(since="1.2") public static PrintStream getLogStream()非推奨。getLogWriter
を使用DriverManager
およびすべてのドライバが使用する、ログおよびトレースのPrintStreamを取得します。- 戻り値:
- ログおよびトレースのPrintStream。無効な場合は
null
- 関連項目:
-
println
public static void println(String message) 現在のJDBCログ・ストリームにメッセージを印刷します。- パラメータ:
message
- ログ・メッセージまたはトレース・メッセージ
-
getLogWriter
を使用