В курсе рассматривается построение и развертывание корпоративных приложений на Java Platform Enterprise Edition 7 Web Profile. Изучаются такие вопросы, как аннотации, Session Enterprise JavaBeans (EJB-Lite), Java Persistence API (JPA), сервлеты, JavaServer Pages(JSPs), Contexts and Dependency Injection (CDI), JAX-RS RESTful web сервисы, Java API for WebSocket и Java API для обработки JSON.
Слушатели обучаются:
-
Создавать web-интерфейсы как для десктопных, так и для мобильных устройств
-
Осуществлять сборку приложения
-
Создавать Java приложения
-
Разворачивать приложение на сервере приложений (в окружении Java EE platform runtime)
Достоинства курса
Слушатели приобретают практический опыт построения Java EE web приложений. Они обучаются созданию пользовательских web-интерфейсов с использованием HTML5 и JavaScript, а также JSP и сервлетов. Пользовательские web-интерфейсы используют AJAX для взаимодействия с созданными слушателями RESTful web сервисами; персистентность данных обеспечивается с помощью JPA и оптимистических блокировок.
Практические упражнения
Изучаемый материал закрепляется при выполнении практических упражнений, организованных в виде структурированных лабораторных работ. В частности, изучаются EJB-Lite сеансовые компоненты, которые могут участвовать в транзакциях, управляемых контейнером. Практические упражнения выполняются с использованием NetBeans IDE и WebLogic Server.
Требуемая предварительная подготовка
-
Умение авторизации web страниц, использующих HTML, CSS и JavaScript
-
Понимание концепций баз данных и синтаксиса SQL
-
Опыт работы с Java SE или сертификация Java Programmer
-
Понимание принципов объектно-ориентированного программирования
-
Курс Java SE 8 Programming
Предполагаемая предварительная подготовка
-
Опыт работы с интегрированной средой разработки
-
Курс JavaScript and HTML5: Develop Web Applications
Курсы для дальнейшего обучения
-
Java EE 6: Develop Web Services with JAX-WS & JAX-RS
Цель курса:
-
Создание и использование Java аннотаций
-
Выбор корректного Java EE прфиля для данного приложения
-
Разработка запуск приложения, основанного на EJB технологии
-
Создание Java EE приложений с помощью Java EE 7 платформы
-
Изучение сервисов, предоставляемых сервером приложений
-
Упаковка, развертывание и отладка корпоративных приложений
-
Создание пользовательских web-интерфейсов с применением технологий сервлетов, JSP, JAX-RS и JavaScript
-
Доступ к реляционным базам данных с помощью Java Persistence API
-
Создание масштабируемой, транзакционной бизнес-логики с помощью EJB-Lite
-
Разработка базовых классов Java Persistence API сущностей для обеспечения доступа к базе данных
-
Разработка пользовательского web-интерфейса с помощью Servlets, JSPs и JAX-RS
-
Проектирование приложений с использованием инжекции зависимости
-
Использование IDEs и серверов приложений для Java EE разработки
Аудитория курса:
-
J2EE разработчики
-
Java разработчики
-
Java EE разработчики
-
Web администраторы
Java Platform, Enterprise Edition
-
Java EE Platform.
-
Потребность в разработчиках корпоративных приложений.
-
Java EE спецификации.
-
Сравнение сервисов и библиотек.
-
Java EE Web Profile.
-
Tiers и layers Java EE приложения.
Корпоративные средства разработки и приложения
-
Предназначение сервера приложения.
-
Запуск и остановка WebLogic Server.
-
Свойства Java EE компонент.
-
Процесс разработки Java EE приложения.
-
Конфигурирование и упаковка Java EE приложений.
JavaBeans, аннотации и журналирование
-
Возможности Java SE, используемые в Java EE приложении.
-
Создание POJO JavaBeans компонент.
-
Использование журналирования.
-
Использование общих Java аннотаций.
-
Разработка пользовательских аннотаций.
-
Роль аннотаций в Java EE приложениях.
Java EE Web архитектура
-
HTTP модель “запрос-отклик”.
-
Различие между Java Servlets, JSP и JSF коипонентами.
-
Уровни приложения и шаблон MVC.
-
Устранение вопросов потокобезопасности в web компонентах.
-
Использование Expression Language.
Разработка сервлетов
-
Servlet API.
-
Request и Response APIs.
-
Настройка заголовков отклика.
-
Два подхода к созданию тела отклика.
-
Загрузка файлов с помощью сервлета.
-
Передача управления и передача данных.
-
Использование API управления сеансом.
Разработка с использованием JavaServer Pages
-
Роль JSP в качестве презентационного механизма.
-
Авторизация страниц представления JSP.
-
Обработка данных из сервлетов на JSP странице.
-
Использование библиотек тегов.
JAX-RS Web сервисы
-
Для чего нужны web сервисы.
-
Создание RESTful web сервиса.
-
Создание методов, соответствующих правилам поведения HTTP методов.
-
Создание классов JAX-RS ресурса и приложения.
-
Consume query и типы других параметров.
-
Продуцирование и потребление сложных данных в виде XML HTTP status коды.
Java RESTful клиенты
-
Pre-JAX-RS 2 клиенты: HttpUrlConnection и Jersey Client API. JAX-RS 2 Client API.
HTML5 приложения с JavaScript и AJAX
-
Манипуляции HTML DOM с помощью JavaScript.
-
RESTful клиенты с применением JavaScript (AJAX).
-
Ограничения для JavaScript клиентов.
-
Same-Origin политика и CORS.
WebSocket и Java API для обработки JSON
-
Ограничения для Web сервисов.
-
Что такое WebSocket.
-
Создание WebSockets с помощью Java.
-
Клиентский WebSokect с применением JavaScript.
-
Клиентский WebSocket с применением Java.
-
Потребление JSON с применением Java.
-
Продуцирование JSON с применением Java.
Реализация политики безопасности
-
Безопасность под управлением контейнера.
-
Пользовательские роли и обязанности.
-
Создание политики безопасности на основе ролей.
-
API безопасности.
Модели POJO и EJB-Lite компонент
-
Роль EJB components в Java EE приложениях.
-
Достоинства EJB компонент.
-
Операционные характеристики сеансовых компонент без поддержки и с поддержкой состояния сеанса.
-
Создание сеансовых компонент.
-
Создание клиентов сеансовых компонент.
Java Persistence API
-
Роль Java Persistence API в Java EE приложениях.
-
Основы объектно-реляционного маппинга.
-
Элементы и окружение компоненты-сущности.
-
Жизненный цикл и операционные характеристики компонент-сущностей.
Реализация транзакционной политики
-
Транзакционная семантика.
-
Пограммный vs. декларативный транзакционный scoping.
-
Использование JTA для задания транзакционного scope программным образом.
-
Реализация транзакционной политики под управлением контейнера.
-
Оптимистическое блокированиес помощью версионирования компонент-сущностей.
-
Пессимистическое блокирование с помощью EntityManager APIs.
-
Влияние исключений на состояние транзакции.