Цель курса: дать слушателям основы разработки клиент-серверных приложений и приложений для среднего звена. Показать расширение возможностей Oracle PL/SQL с помощью Java классов. В процессе работы строятся простейшие приложения для доступа к Oracle и PostgreSQL данным. Рассматриваются стандарты JDBC. Разрабатываются приложения для переноса данных из плоских таблиц или других серверов, в Oracle, а также взаимодействие между Oracle и PostgreSQL средствами Java. Рассматриваются особенные типы данных Oracle такие как REF, BLOB, CLOB, XMLType, Много внимания уделяется объектной опции Oracle и взаимодействию с ней из Java. Java в базе данных Oracle и характерные особенности JVM.
Продолжительность программы: 40 академических часов 5 дней
Форма обучения: очно-заочная, с применением дистанционных образовательных технологий
Категория слушателей:
- разработчики Oracle и PostgreSQL, переводящие свои приложения на Java платформу, или мигрирующие из плоских таблиц в базу данных Oracle.
Предварительная подготовка:
- начальные знания SQL. Основы объектно-ориентированного программирования на Java (курс JV_0)
- Общая архитектура доступа к данным. JDBC. Сравнение различных драйверов. URL базы данных. Три способа соединения с данными Oracle из Java и один для Postgresql– обзор. Совместимость Oracle JDBC драйверов. Конфигурация JDBC драйвера и его настройка. Доступ к серверу PostgreSQL — особенности
- Интерфейс Connection, Statement, ResultSet, MetaDataResultSet и другие, для обеспечения доступа к данным (архитектура). Последовательность соединения с данными. Отображение типов данных Oracle и Postgresql на java.sql. Потоковые типы данных. Использование интерфейсов для извлечения данных
- Выполнение хранимых процедур на сервере. Интерфейс CallableStatement. Получение наборов данных на сторону клиента через параметры и возвращаемые значения функций.
- Обработка исключительных ситуаций на стороне клиента. Класс java.sql.SqlException. Извлечение серверной информации об ошибке на стороне клиента.
- Поддержка стандарта JDBC. Наборы результатов, поддерживающие расширенные средства просмотра. Перебор результатов в наборе. Обновляемые наборы результатов, правила создания. Выполнение DML операций с обновляемыми наборами данных. Поддержка транзакций. Пакетные изменения и поддержка транзакций.
- Поддержка стандарта JDBC 3. XA пакет Oracle и распределенные транзакции. Класс oracle.jdbc.OracleSavepoint. Расширенные возможности Oracle. Использование Oracle типов данных – Объектные типы данных, ROWID, REF CURSOR.
- Разработка примеров для работы с потоковыми типами данных (BLOB, CLOB, BFILE), с объектными типами данных, с ссылочными типами и коллекциями.
- Общая архитектура Oracle Weblogic сервера и сервера приложений Wildfly. JNDI. Пул соединений и кеширование соединений.
- Разработка полноценного серверного приложения для БД Oracle и базы данных PostgreSQL с использованием средств Java и PL/SQL — PGSQL.
- Разработка клиентского приложения с обработкой данных на клиентской стороне. Кеширование изменений. Пессимистическое и оптимистическое изменение данных.
- Виртульная Java машина в базе данных Oracle. Что в имени класса? Пакеты Oracle Pl/SQL для работы с Java машиной. Resolver. Предоставление прав пользователям Oracle для работы с Java.
- Использование утилиты JavaLoader для загрузки Java классов в базу данных Oracle. Jdeveloper и автоматизация управления Java классами в Oracle. Процедуры – оболочки для вызова java из PL/SQL. Вызов PL/SQL из Java.
- Расширение возможностей PL/SQL. Построение Java приложений для разбора текстовых файлов – аналог TABLE ORGANIZATION EXTERNAL. Разработка репликаций на основе Java классов – доступ к другим (не Oracle ) серверам из Oracle.