Название: Java. Уровень 3. Разработка серверного программного обеспечения на Java EE
Чем отличается программист от инженера-программиста? Квалификацией. Хотите выйти на качественно новый уровень Java-разработчика? Тогда сделайте третий шаг, чтобы стать инженером-программистом: Senior Java Developer уровня Middle. Пройдите практико-ориентированное обучение в УЦ «Специалист» при МГТУ им. Н.Э. Баумана по обновлённой учебной программе и станьте разработчиком серверного программного обеспечения, чтобы получить квалификацию, соответствующую должности backend-разработчика. Современная разработка — это сложный и многоуровневый процесс, который делится на две части: клиентскую (frontend) и серверную (backend). Для разработки серверного программного обеспечения используются платформа Java Enterprise Edition (Java EE). Платформа Java EE (Jakarta EE) содержит набор взаимосвязанных технологий, которые существенно сокращают стоимость и сложность разработки, развертывания многоуровневых серверных приложений. Использование данной технологии позволяет создавать серверные высокопроизводительные приложения для средних и крупных предприятий. Получите знания и практические навыки, необходимые разработчику серверных приложений на Java EE, в Учебном центре «Специалист» при МГТУ им. Н.Э. Баумана. Цель курса: Получить теоретические знания и практические навыки создания Enterprise Java Bean компонентов (EJB-компонентов) соответствующих спецификации EJB 3.2. А также навыки использования EJB-компонентов в составе клиент-серверных приложений взаимодействующих с базами данных. Курс может использоваться как источник материалов для подготовки к экзаменам CIW 1D0-442, Sun CX-310-091. По окончании курса Вы будете уметь: Создавать корпоративные многофункциональные серверные компоненты и высокопроизводительные, отказоустойчивые информационные системы на основе технологии Enterprise Java Beans (EJB). Эти знания помогут вам разрабатывать web-приложения на языке Java, приложения для баз данных Oracle. Создавать web-службы на базе решений JAX-WS и JAX-RS. Вы научитесь использовать протоколы SOAP и соглашениях REST, чтобы приложения между собой могли обмениваться данными в виде сообщений. Использовать MDB-компоненты для организации асинхронной обработки сообщений в различных форматах. В рамках проекта создавать web-приложение, которое позволит посетителям интернет-магазина формировать и просматривать свою персональную корзину с последующим процессом формирования заказа c применением технологий EJB, JMS, JAX-RPC, EE Concurrency. Создавать по техзаданию приложение, которое должно получать котировки в формате JSON с использованием технологии web-служб на основе JAX-RS API и технологии JTA для поддержки транзакций. Создавать приложение на основе JavaFX и серверное приложение с использованием web-служб для обмена данными в формате JSON и XML. Специалисты, обладающие этими знаниями и навыками, в настоящее время крайне востребованы. Большинство выпускников наших курсов делают успешную карьеру и пользуются уважением работодателей. Программа курса: Модуль 1. Обзор платформы Enterprise Edition. Типы корпоративных приложений Обзор и возможности платформы Enterprise Edition. Сравнение Java SE и EE платформ. Введение в основные технологии платформы EE: Servlet API/JSP, EJB, JMS, JPA, JAX-WS, JAX-RS. Обзор JavaEE-серверов приложений. Выбор сервера приложений для разработки и развертывания приложений. N-уровневая архитектура. Структура enterprise-приложения. Использование среды разработки для создания приложения и развертывания на сервере приложений. Возможности по конфигурированию сервера приложений. Создание Web-приложений. Работа с Web-компонентами различных типов. Обработка HTTP запросов, перенаправление запросов, формирование ответов от сервера, работа с сессией. Создание и применение фильтров (Servlet Filter). Работа с ресурсами различных типов, конфигурирование ресурсов на сервере приложений. Использование аннотаций для внедрения ресурсов. Лабораторная работа: Установка/конфигурирование сервера приложений и среды разработки. Создание веб-приложения и развертывание приложения на сервере. Использование ресурсов в веб-приложении. Модуль 2. Технология Enterprise JavaBeans (EJB). Создание Web-приложений с использованием EJB-компонентов. Обзор технологии EJB. Типы EJB-компонентов. Использование различных типов EJB-компонент в enterprise-приложениях. Компоненты типа Session. Виды Session компонент: Stateless, Singleton, Stateful. Выбор вида Session-компонента в enterprise-приложении. Использование аннотаций для создания компонент типа Session. Методы компонента. Использование бизнес-интерфейсов: локальный, удаленный, представление без интерфейса. Жизненный цикл Session-компонент различных видов. Методы обратного вызова. Доступ к EJB компонентам: внедрение зависимостей через аннотации, использование JNDI lookup. Использование ресурсов в EJB-компонентах. Взаимодействие Web-компонент и EJB-компонент. Лабораторная работа: Создания web-приложения c использованием EJB-компонент и взаимодействием с БД. Модуль 3. Технология JMS и Message-Driven Bean компоненты Архитектура JMS. Типы и структура JMS сообщений. API JMS для отправки/получения сообщений: использование queue и topic. Создание и работа с JMS-ресурсами на сервере приложений. Использование Message-Driven Bean (MDB) компонентов для обработки сообщений. Лабораторная работа: Реализация клиента для отправки сообщений, использование MDB-компонентов для обработки сообщений. Модуль 4. Технология JPA (Java Persistence API). Управление транзакциями. JTA API для поддержки транзакций Основные понятия Java Persistence API. API JPA: Entity, EntityManager - интерфейс основных операций. Использование EntityManager для выполнения операций с Entity-объектом. Жизненный цикл Entity объекта. Использование JPQL (Java Persistence query language) Управление транзакциями. Понятие транзакции. Java Transaction API (JTA API) для поддержки транзакций. Использование CMT и BMT в EJB-компонентах. Локальные и глобальные транзакции. Использование java.sql.DataSource и java.sql.XADataSource при работе с транзакциями. Лабораторная работа: Создание приложения с использованием транзаций и EJB-компонент. Модуль 5. Использование многопоточности в корпоративных приложениях. Асинхронные вызовы методов EJB-компонент Использование EE Concurrency API для выполнения асинхронных задач и получения результатов задач. Основные интерфейсы API и варианты использования. Использование асинхронных методов EJB-компонентов для выполнения задач в отдельном потоке. Аннотации для методов и классов компонент. Использование службы таймеров (EJB Timer Service) для выполнения задач по расписанию. Лабораторная работа: Создание приложения для реализации периодической задачи с использованием Concurrency API и EJB-компонентов. Модуль 6. Создание SOAP и REST веб-служб(JAX-WS,JAX-RS API) SOAP веб-сервисы. Основные понятия SOAP и структура SOAP-сообщения. Использование JAX-WS API для создания SOAP веб-сервисов. Создание клиента для взаимодействия с SOAP веб-сервисом. Создание SOAP веб-сервиса на основе EJB-компонента. REST веб-сервисы. Основы REST-архитектуры программного обеспечения для распределенных систем. Использование JAX-RS API для создания REST веб-сервисов. Создание клиента для взаимодействия с REST веб-сервисом. Подходы к тестированию веб-сервисов - использование различных инструментов для проверки работы сервиса. Лабораторная работа: Создание клиента и веб-сервиса. Создание веб-сервиса на основе EJB-компонента. Модуль 7. API для работы c документами в формате JSON (JSON Processing, JSON Binding API) JSON формат. Основные API для работы с JSON-документами в enterprise-приложении. JSON Binding API. JSON Processing API. Использование Streaming API для разбора JSON-документов. Лабораторная работа: Создание интеграционного приложения для обработки документа в формате JSON c последующим сохранением данных. Модуль 8. Безопасность корпоративных приложений Основные понятия. Безопасность web-приложений. Аутентификация и авторизация в enterprise-приложениях. Использование конфигурации для настройки безопасности приложений. Использование EE Security API. Разграничение прав доступа в enterprise-приложении.
Скачать: