public interface StatementEventListener extends EventListener
PreparedStatements
のプールを有効にする標準のメカニズムを提供し、文のプールのサイズを指定する目的で、JDBC 3.0仕様に、maxStatementsのConnectionPooledDataSource
プロパティが追加されました。ただし、PreparedStatement
が無効になった場合に、ドライバが外部の文のプールに通知する手段はありませんでした。一部のデータベースでは、テーブルに影響を及ぼすDDL処理が実行されると、文が無効になります。たとえば、テーブルに対してなんらかの処理を実行する際、一時テーブルを作成して破棄するようなアプリケーションがあるとします。このアプリケーションは、あとで必要になったときに、同じテーブルを再度作成する可能性があります。一部のデータベースは、一時テーブルが破棄されると、この一時テーブルを参照する用意された文を無効にします。
ConnectionEventListener
インタフェースで定義されているメソッドと同様に、ドライバは、文が無効であることを検出すると、例外をスローする前にStatementEventListener.statementErrorOccurred
メソッドを呼び出します。PreparedStatement
が閉じられると、ドライバは、さらにStatementEventListener.statementClosed
メソッドを呼び出します。
PooledConnection
インタフェースには、コンポーネントがPooledConnection
にStatementEventListenerを登録することを許可するメソッドが追加されています。
修飾子と型 | メソッドと説明 |
---|---|
void |
statementClosed(StatementEvent event)
ドライバは、
PreparedStatement が閉じられたことを検出すると、接続上の登録されているすべてのStatementEventListener で、このメソッドを呼び出します。 |
void |
statementErrorOccurred(StatementEvent event)
ドライバは、
PreparedStatement が無効であることを検出すると、接続上の登録されているすべてのStatementEventListener で、このメソッドを呼び出します。 |
void statementClosed(StatementEvent event)
PreparedStatement
が閉じられたことを検出すると、接続上の登録されているすべてのStatementEventListener
で、このメソッドを呼び出します。event
- イベントのソースと、PreparedStatement
が閉じられたことを記述するイベント・オブジェクト。void statementErrorOccurred(StatementEvent event)
PreparedStatement
が無効であることを検出すると、接続上の登録されているすべてのStatementEventListener
で、このメソッドを呼び出します。ドライバは、指定されたイベントに含まれるSQLException
をアプリケーションにスローする直前に、このメソッドを呼び出します。
event
- イベントのソース、無効な文、およびドライバがスローしようとしている例外を記述するイベント・オブジェクト。イベントのソースは、無効なPreparedStatement
が関連付けられているPooledConnection
。
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.