Вопросы по программированию на языке Java для Internet
Программирование на языке Java для Internet
Вопросы к экзамену “Programarea în Java pentru Internet”.
- Сервлеты.
Базовая структура сервлета. Жизненный цикл сервлета. Метод init(). Метод service(). Методы doGet(), doPost(), doXxx(). Шаблон сервлета.
Обработка запросов клиента: данные формы. Пример: чтение всех параметров. Передача данных Checkbox сервлету.
Доступ к базе данных из сервлета.
Сервлетные фильтры. Интерфейс FilterChain. Передача сжатых Web-страниц (GZip Servlet Filter).
- JSP – Java Server Pages.
Преимущества использования JSP-технологии
Простая JSP–страница. Жизненный цикл JSP. Элементы сценария JSP. Текст шаблона. Предопределенные переменные.
Выражения JSP. Использование выражений в качестве значений атрибутов.
Директивы. Скриптлеты JSP.
Использование скриптлетов для создания условных частей JSP файла.
Объявления JSP.JSP страницы и объекты. Элементы action. Страница JSP, взаимодействующая с компонентом JavaBeans.
JSP Expression Language. Основные операторы EL. Функции JSP EL. JSP EL неявные объекты.
JSP - Обработка исключений.
- JSP - Standard Tag Library (JSTL).
Установка библиотеки JSTL. Классификация тегов JSTL. Теги форматирования. Теги SQL. XML-теги. Функции JSTL.
JSP. Основы построения пользовательских дескрипторов. Тело дескриптора. Применение пользовательских дескрипторов – JSP-файл. Определение пользовательских дескрипторов – файл описания. Реализация пользовательских дескрипторов – класс поддержки дескриптора. Жизненный цикл пользовательского тега (дескриптора).
Ссылка на описание библиотеки B WEB-INF/web.xml.
Элементы <taglib> и <tag>.
Пользовательские теги с атрибутами.
Доступ к информации о документе.
JSP – JSTL – доступ к базе данных (JDBC).
Организация взаимодействия потоков в JSP.
- Hibernate. Введение Архитектура Hibernate. Конфигурирование. Сессии – соединения с базой данных.
Аннотации.
Транзакции. Понятие и свойства транзакции. Управление транзакциями в JPA. Уровни изоляции транзакций. Стратегии блокировки. Пример транзакции в Hibernate.
Java Persistence API. Object-Relational Mapping ORM. Понятие сущностей. Объектно-реляционное отображение. Выполнение запросов к сущностям. Единица сохраняемости. Жизненный цикл сущности и обратные вызовы. Интеграция с Bean Validation. Обзор спецификации JPA. Пример приложения. Написание сущности Book.
Написание класса Main. Написание интеграционного теста BookIT. Написание единицы сохраняемости. Написание SQL-сценария для загрузки данных. Компиляция и тестирование с использованием Maven. Применение класса Main с использованием Maven.
Объектно-реляционное отображение. Элементарное отображение.
Таблицы. Первичные ключи. Атрибуты. Тип доступа. Коллекции базовых типов. Отображение базовых типов. Отображение с использованием XML. Встраиваемые объекты. Отображение связей. Связи в реляционных базах данных. Связи между сущностями. Выборка связей. Упорядочение связей. Отображение наследования. Стратегии наследования. Типы классов в иерархии наследования.
Управление постоянными объектами. Менеджер сущностей. Контекст постоянства. Манипулирование сущностями.
JPQL. Запросы. Динамические запросы. Именованные запросы. Criteria API (или объектно-ориентированные запросы). «Родные» запросы. Запросы к хранимым процедурам.
Cache API.
Конкурентный доступ. Контроль версий. Оптимистическая блокировка. Пессимистическая блокировка.
Жизненный цикл сущности.
Обратные вызовы.
Слушатели.
Пример Hibernate. Class Person. Запись, чтение, поиск объекта в БД.
Пример Hibernate. Работа с двумя таблицами – People, Dog.
Зачеркнутое из вопросов исключено.
Оставить комментарий