モジュール java.sql
パッケージ javax.sql

インタフェースStatementEventListener

  • すべてのスーパー・インタフェース:
    EventListener

    public interface StatementEventListener
    extends EventListener
    Statementプール内のPreparedStatementで発生したイベントの通知を受けるように登録されているオブジェクトです。

    PreparedStatementsのプールを有効にする標準のメカニズムを提供し、文のプールのサイズを指定する目的で、JDBC 3.0仕様に、maxStatementsのConnectionPooledDataSourceプロパティが追加されました。 ただし、PreparedStatementが無効になった場合に、ドライバが外部の文のプールに通知する手段はありませんでした。 一部のデータベースでは、テーブルに影響を及ぼすDDL処理が実行されると、文が無効になります。 たとえば、テーブルに対してなんらかの処理を実行する際、一時テーブルを作成して破棄するようなアプリケーションがあるとします。 このアプリケーションは、あとで必要になったときに、同じテーブルを再度作成する可能性があります。 一部のデータベースは、一時テーブルが破棄されると、この一時テーブルを参照する用意された文を無効にします。

    ConnectionEventListenerインタフェースで定義されているメソッドと同様に、ドライバは、文が無効であることを検出すると、例外をスローする前にStatementEventListener.statementErrorOccurredメソッドを呼び出します。 PreparedStatementが閉じられると、ドライバは、さらにStatementEventListener.statementClosedメソッドを呼び出します。

    PooledConnectionインタフェースには、コンポーネントがPooledConnectionにStatementEventListenerを登録することを許可するメソッドが追加されています。

    導入されたバージョン:
    1.6
    • メソッドのサマリー

      すべてのメソッド インスタンス・メソッド 抽象メソッド 
      修飾子と型 メソッド 説明
      void statementClosed​(StatementEvent event)
      ドライバは、PreparedStatementが閉じられたことを検出すると、接続上の登録されているすべてのStatementEventListenerで、このメソッドを呼び出します。
      void statementErrorOccurred​(StatementEvent event)
      ドライバは、PreparedStatementが無効であることを検出すると、接続上の登録されているすべてのStatementEventListenerで、このメソッドを呼び出します。
    • メソッドの詳細

      • statementClosed

        void statementClosed​(StatementEvent event)
        ドライバは、PreparedStatementが閉じられたことを検出すると、接続上の登録されているすべてのStatementEventListenerで、このメソッドを呼び出します。
        パラメータ:
        event - イベントのソースと、PreparedStatementが閉じられたことを記述するイベント・オブジェクト。
        導入されたバージョン:
        1.6
      • statementErrorOccurred

        void statementErrorOccurred​(StatementEvent event)
        ドライバは、PreparedStatementが無効であることを検出すると、接続上の登録されているすべてのStatementEventListenerで、このメソッドを呼び出します。 ドライバは、指定されたイベントに含まれるSQLExceptionをアプリケーションにスローする直前に、このメソッドを呼び出します。
        パラメータ:
        event - イベントのソース、無効な文、およびドライバがスローしようとしている例外を記述するイベント・オブジェクト。 イベントのソースは、無効なPreparedStatementが関連付けられているPooledConnection
        導入されたバージョン:
        1.6