Слушатели (Java Event Listener). Назначение. Принципы применения

Слушатель событий – это класс Java, реализующий один или более интерфейсов слушателей событий интерфейсов.

Перечень интерфейсов слушателей и их назначение приведен в табл. 5.1

Идентификатор интерфейса Обрабатываемые события
ServletContextListener Создание и разрушение контекста
ServletContextAttributeListener Добавление, удаление, модификация атрибута контекста
HttpSessionListener Создание и уничтожение сеанса
HttpSessionAttributeListener Добавление, удаление, модификация атрибута сессии

Как и фильтры, слушатели создаются и инициализируются web-контейнером при загрузке web-сервера.

Слушатель может реализовывать интерфейс HttpSessionListener и обрабатывать события двух типов: создание (метод sessionCreated) и уничтожение сеанса (sessionDestroyed).

HttpSessionAttributeListener обрабатывает события добавления (attributeAdded), удаления (attributeRemoved), модификации(attributeReplaced) атрибута сессии. Слушатель может реализовывать интерфейс ServletContextListener и обрабатывать события двух типов: создание (метод contextCreated) и уничтожение контектса (contextDestroyed).

ServletContextAttributeListener обрабатывает события добавления (attributeAdded), удаления (attributeRemoved), модификации(attributeReplaced) атрибута сессии.

package lst;

import javax.servlet.http.HttpSession;

import javax.servlet.http.HttpSessionEvent;

import javax.servlet.http.HttpSessionListener;

public class Lst1 implements HttpSessionListener {

public void sessionCreated(HttpSessionEvent se) {

HttpSession ss = se.getSession();

System. out. println("Lst1:sessionCreated:Id="

+ ss.getMaxInactiveInterval());

ss.setMaxInactiveInterval(10);

System. out. println("Lst1:sessionCreated:Id=" + ss.getId());

}

public void sessionDestroyed(HttpSessionEvent se) {

System.out.println("Lst1:sessionDestroyed:Id="

}

}

<listener>

<listener-class>lst.Lst1</listener-class>

</listener>

<listener>

<listener-class>lst.Lst2</listener-class>

</listener>


26. Технология JDBC. Состав JDBC. Структура jdbcприложения. Типы JDBC-драйверов.

Java Database Connectivity (JDBC) – это технология, применяемая для доступа приложений на языке Java к реляционным базам данных. Пользуясь интерфейсом JDBC java-приложения, могут выполнить SQL-запрос к СУБД, а также получить и обработать результат этого запроса. В самом первом приближении JDBC – это реализация интерфейса Microsoft ODBC, но для платформы Java.

Интерфейс JDBC реализован в виде двух пакетов java.sql и javax.sql.

Основная задача, решаемая JDBC – это организация интерфейса между компонентой web-приложения и сервером реляционной базы данных. Условно этот интерфейс можно разбить на две части: JDBC API и JDBC-драйвер.

JDBC API – это набор java-классов и интерфейсов, входящих в состав пакетов java.sql и javax.sql, которыми оперирует разработчик приложения. Этот набор классов является стандартным и не зависит от типа sql-базы данных, с которой осуществляет взаимодействие приложение. Все приложения, использующие JDBC одинаковым способом выполняют sql-операции. JDBC API входит в состав спецификации Java Platform Standard Edition.

JDBC-драйвер – это программное средство, взаимодействующее с JDBC API стандартным образом и учитывающее специфику конкретной sql-базы данных. JDBCдрайвер входит в состав программного обеспечения сервера базы данных и как правило, разрабатывается, компаниями-производителями СУБД. Спецификация JDBC предусматривает четыре типа драйверов.

Первый тип jdbc-драйверов является мостом между JDBC API и драйвером ODBC. Второй тип драйверов только частично реализован на языке Java и является зависимым от платформы.

Третий тип драйверов полностью реализован на языке Java, но взаимодействует с сервером через клиентскую часть СУБД.

Четвертый тип драйверов тоже полностью реализован на языке Java и не требует никого посредника для связи с сервером базы данных (тонкий клиент). Обычно jdbc-драйвер представляет собой jar-файл.

Драйвер может работать в 2 режимах: толстый и тонкий клиент.

Толстый клиент требует установки клиентской части СУБД на клиентской машине. Через строку подключения, указываем имя и пароль.

Тонкий клиент требует знания всех параметров подключения: хост, порт, имя сервиса, имя БД, пользователь, пароль и т.д.

В JDBC входят несколько классов, с помощью которых можно передать строку SQL запроса, и получить ответ в виде объект класса Result. Можно вызывать процедуры и функции, который исполняются на стороне СУБД и принимать ответы.



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: