Интерфейс StatementEventListener
- Все суперинтерфейсы:
- EventListener
public interface StatementEventListener extends EventListener
Объект, регистрирующийся для получения уведомлений о событиях, происходящих на PreparedStatement, находящихся в пуле Statement.
Спецификация JDBC 3.0 добавила свойство maxStatements ConnectionPooledDataSource для обеспечения стандартного механизма включения пула PreparedStatements и для указания размера пула заявлений. Однако не было способа, чтобы драйвер уведомлял внешний пул заявлений, когда PreparedStatement становится недействительным. Для некоторых баз данных заявление становится недействительным, если выполняется операция DDL, влияющая на таблицу. Например, приложение может создать временную таблицу, чтобы выполнить некоторую работу с таблицей, а затем уничтожить ее. Позже оно может снова создать ту же таблицу, когда она потребуется. Некоторые базы данных сделают недействительными все подготовленные запросы, ссылающиеся на временную таблицу, при удалении таблицы.
Аналогично методам, определенным в интерфейсе ConnectionEventListener, драйвер вызовет метод StatementEventListener.statementErrorOccurred перед выбросом любых исключений, когда он обнаружит, что заявление недействительно. Драйвер также вызовет метод StatementEventListener.statementClosed при закрытии PreparedStatement.
Методы, которые позволяют компоненту зарегистрировать StatementEventListener с PooledConnection, были добавлены в интерфейс PooledConnection.
- С:
- 1.6
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
statementClosed(StatementEvent event) Драйвер вызывает этот метод для всех |
void |
statementErrorOccurred(StatementEvent event) Драйвер вызывает этот метод для всех |
Методы
statementClosed
void statementClosed(StatementEvent event)
Драйвер вызывает этот метод для всех StatementEventListener зарегистрированных на соединении, когда обнаруживает, что PreparedStatement закрыт.
- Параметры:
-
event- объект события, описывающий источник события и то, чтоPreparedStatementбыл закрыт. - С:
- 1.6
statementErrorOccurred
void statementErrorOccurred(StatementEvent event)
Драйвер вызывает этот метод для всех StatementEventListener зарегистрированных на соединении, когда обнаруживает, что PreparedStatement недействителен. Драйвер вызывает этот метод непосредственно перед тем, как выбросить SQLException, содержащийся в данном событии, в приложение.
- Параметры:
-
event- объект события, описывающий источник события, заявление, которое является недействительным, и исключение, которое драйвер собирается выбросить. Источник события —PooledConnection, с которым связано недействительноеPreparedStatement. - С:
- 1.6
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.