Цель: по окончании курса, слушатели смогут разрабатывать приложения на Java для Oracle сервера c использованием языка разметки XML и всех его стандартов.
Первый День.
От технологии файл-сервер к технологии распределенных вычислений в SOA архитектуре.
XML – как механизм для обмена информацией между серверами приложений и базами данных.
Три уровня стандартов XML.
Основы грамматики XML.
Использование Oracle JDeveloper для формирования XML документов.
Понятие XML Parser, SAX и DOM парсеры.
Разработка java приложения для создания DOM объекта, навигация по узлам XML DOM в java приложении.
Создание DOM модели в PL/SQL – пакет DBMS_XMLPARSER .
Извлечение информации из XML документа средствами пакета DBMS_XMLDOM.
Основы работы с типом данных Oracle – XMLType. Особенности использования табличных колонок типа XMLType.
Загрузка больших объемов XML данных из Java-Client приложений с предварительной проверкой на стороне клиента.
Использование библиотек Oracle XML Development KIT для работы с XML потоками в Java – Загрузка xml документов в реляционные таблицы, выгрузка xml данных в файловую систему клиента.
Размещение в базе данных Java классов для обеспечения SAX парсирования XML документов.
Второй День.
Основы языка XPATH.
Назначение языка и основные стандарты.
Модель данных XPATH.
Основные типы языка. Определение контекста для обработки выражений.
Пути адресации – полная и сокращенная форма. Шаги адресации – оси, правила проверки узлов, отсев ненужных узлов.
Функции и наборы узлов.
Построение примеров с использованием XMLPath в среде JDeveloper.
Oracle XMLType и его методы для работы с XPATH выражениями.
Извлечение данных из XMLType колонок реляционных таблиц Oracle DB.
SQL функции для работы с XPATH выражениями.
Введение в Oracle XDB репозиторий.
Конфигурирование XDB сервера администратором базы данных Oracle (http, ftp порты).
Описание хранилища ресурсов, представление resource_view. Извлечение информации о ресурсе,
Access Control List.
Конфигурация каталогов для доступа рядовых пользователей к каталогам Oracle XDB – пакет Oracle dbms_xdb и его проседуры для управления ACL – на практическом примере.
Создание ресурсов в репозитории с помощью пакетов Oracle PL/SQL.
Разработка Java приложений для загрузки и выгрузки ресурсов в XDB репозиторий.
Следующий этап развития языка XPATH – XPATH 2 и XQuery.
Модель данных XQuery и состовная часть - язык XPATH.
Обзор инструментов XQuery.
Разработка и исполнение запросов XQuery в среде JDeveloper.
Выражения и оси адресации.
Практическое построение запросов к XML документам.
Использование языка запросов XQuery в Oracle SQL – функция XMLQuery, оператор doc для обеспечения доступа к XDB репозиторию.
Выполнение поиска по документам репозитория с использованием предложений every, satisfies и других, использование функций преобразования и условных операторов в XQuery.
Третий день.
Расширение XQuery компанией Oracle.
Извлечение XML документов из реляционных таблиц с помощью оператора ora:view.
Сортировки и условные операции связывания в XQuery.
Фукции SQL для формирования XML.
Архитектура функции XMLElement, создание атрибутов, узлов, комментариев, корневых элементов с помощью функций SQL.
Агрегация кортеджей – функция XMLAGG, практическое написание запросов, для получения вложенных списков, приведение типов возвращаемых из SQL запросов к объектным типам данных – преобразование CAST - MULTISET.
Пакет DBMS_XMLGEN для формирования xml на основе реляционных запросов.
Использование возвращенного из PL/SQL процедуры курсора – SYS_REFCURSOR для извлечения XML потока.
Пакет DBMS_XMLSTORE – особенности формирования DML операторов для выполнения обновления данных на основе XML документов.
Введение в XSLT преобразования.
Пространство имен XSLT и версии стандарта.
Использование JDeveloper для создания документов преобразования с последующим их тестированием непосредственно в среде разработки.
Шаблон преобразования, описание элементов XSLT , формирование циклов, вычислений, переменных и других механизмов в файлах трансформации.
Подготовка XML потока для отправки в процедуры пакета DBMS_XMLSTORE с формированием DML операторов в базу данных.
Четвертый день.
Разработка Java клиента для подготовки XML документа через XSLT преобразование с последующей загрузкой его в базу данных через пакет DBMS_XMLSTORE.
Использование расширения Oracle XSQL для формирования XML документов.
Краткое введение в Oracle Weblogic сервер и JEE приложения.
Подготовка XSQL страницы для отправки на сервер приложений.
Основные элементы пространства имен xsql для доступа к базе данных Oracle.
XSQL – как еще один вариант извлечения данных из базы данных.
Преобразование XSQL страницы в HTML страницу.
Передача параметров .
Введение в XSL-FO трансформацию.
Использование библиотек для преобразования RTF формата в XSLT-FO .
Правила подготовки RTF документа с использованием xsl тегов и элементов.
Формирование переменных и параметров на странице rtf.
Трансформация FO с использованием Java классов.
Практический пример построения Web приложения с подготовкой отчета в стандартном формате (Word, Excel, PDF и других)
Пятый день.
Схемы документов DTD и XSD сравнение в использовании, разработка Java парсера для проверки документа на соответствие DTD схеме.
XSD документ – пространство имен, базовая схема документов консорциума W3C.
Разработка схемы документа в среде JDeveloper.
Комплексные и простые типы, описание ограничений на базовые типы данных с помощью фасеток.
Определение ключей и ссылок на них.
Импортирование в схему документа описаний из других файлов XSD.
Наследование типов.
Создание SAX парсера для проверки XML документа на соответствие XSD схеме.
Регистрация схемы документа в базе данных Oracle – использование пакета DBMS_XMLSCHEMA.
Представления словаря метаданных для получения информации о зарегистрированн
XMLType для проверки документов на соответствие XSD в базе данных.
Создание объектных колонок и таблиц в базе данных с описанием метаданных на базе XSD схем.
Особенности загрузки данных в таблицы с XML-XSD полями.
Метод проверки XMLType типа в триггере и хранимой процедуре.
Основы JAXB 2 компиляции – пример получения Java объекта из XML файла и сереализация Java объекта в XML файл.
Конфигурация контекста JAXB.
WSDL формат для описания WEB сервисов.
Разработка WSDL документа в среде JDeveloper.
Реализация методов сервиса в PL/SQL пакетах.
Размещение сервиса на сервере приложений Weblogic.
Введение в язык BPEL.