Многомодульный maven. Многопоточность. XML (JAXB/StAX).
Веб сервисы (JAX-RS/SOAP). Удаленное взаимодействие (JMS/AKKA)

разработка полнофункционального многомодульного Maven проекта,
состоящего из 3-х веб приложений

Структура проекта

Проект идет в индивидуальном режиме
(старт в любой момент, время прохождения ничем не ограничено)

Все материалы (проект, патчи, занятия и видео) и группа поддержки Slack доступны сразу после оплаты.


Требование к участникам: опыт программирования на Java. Базовые знания Maven.

Стажировка ведется по рассылке: подготовленным на основе вебинара, разбитым по темам и отредактированным записям, подобно вступительному занятию. Каждое занятие начинается с разбора домашнего задания и состоит из 2-5 тем/видео и 5-8 патчей к проекту. Мы последовательно разрабатываем приложение с разбором кода и теоретическим материалом. Все домашние задания подобранны по темам занятия, требуют реализации функциональности, схожей с пройденной на занятии и являются частью проекта. Разбор домашних заданий происходит в начале каждого урока. Вопросы и обсуждение занятий и домашних заданий, общение на разные темы происходит в различных каналах группы проекта (используем мессенджер Slack).

Посмотреть персональную стоимость и оплатить участие можно в личном профиле после запроса первого занятия


По 01.05 цена для наших участников 6300 RUB

Письмо участника (доступ ко всем материалам, приглашение в Slack и единоразовый ключ Ultimate IntelliJ IDEA на 6 месяцев) приходит сразу после оплаты картой из личного профиля (по ссылка в письме вводного занятия)

При оплате другими способами обязательно требуется подтверждение (ваш email, проект, куда отправлен платеж)

Курс рубля | Контакты для связи


В конце обучения выдается электронный сертификат об окончании


Программа

    Открытое занятие 1: многопоточность.

  • Вступление. Многопоточность и параллельность.
  • Структура памяти Java. Ленивая инициализация.
  • Реализация многопоточности в Java
  • Реализация многопоточной отправки писем. Execution Framework

    Занятие 2

  • Разбор ДЗ: многопоточная реализация умножения матриц
  • Java Microbenchmark JMH (от Алексея Шипилева)
  • Формат XML. Создание схемы XSD.
  • Работа с XML в Java
  • JAXB, JAXP, StAX, XPath, XSLT

    Занятие 3

  • Разбор ДЗ: работа с XML
  • Обзор Guava
  • Монады. flatMap
  • SOA и Микросервисы
  • Многомодульный Maven проект

    Занятие 4

  • Разбор ДЗ: реализация структуры проекта, загрузка и разбор xml
  • Thymeleaf
  • Maven. Поиск и разрешение конфликтов зависимостей
  • Подключаем логирование с общими настройкам
  • Библиотеки и фреймворки для работы с JDBC.
  • Модуль persistence

    Занятие 5

  • Разбор ДЗ: cохранение в базу в batch-моде с обработкой конфликтов, вставка в несколько потоков
  • Конфигурирование приложения (Typesafe config)
  • Lombok

    Занятие 6

  • Разбор ДЗ: доработка модели и модуля export
  • Миграция DB
  • Веб-сервисы (REST/SOAP)
  • Java реализации SOAP
  • Имплементируем Mail Service

    Занятие 7

  • Разбор ДЗ: реализация MailSender, сохранение результатов отправки в DB, импорт Проектов и Групп
  • Стили WSDL. Кастомизация WSDL
  • Публикация кастомизированного WSDL. Автогенерация.
  • Деплой в Tomcat
  • Создание клиента почтового сервиса
  • Реализация массовой и групповой отправки почты. HW7

    Занятие 8

  • Разбор ДЗ: делаем общий mailService.wsdl, обновление WSDL, отправка почты из модуля webapp
  • Доступ к переменным maven в приложении
  • SOAP Exception. Выделение общей части схемы
  • Коррекция схемы
  • Добавление мавен плагинов (copy-rename-maven-plugin, maven-antrun-plugin, liquibase-maven-plugin)

    Занятие 9

  • Разбор ДЗ: реализация вложений в веб-сервисе, подключение MTOM, реализация загрузки вложений в модуле webapp, реализация вложений в почте
  • JAX-WS Message Context. Авторизация
  • JAX-WS Handlers (логирование SOAP)
  • Домашнее задание. Статистика

    Занятие 10

  • Разбор ДЗ: реализация SOAP handlers, конфигурирование сервисов
  • JavaEE
  • JAX-RS. Интеграция с Jersey
  • JMS. Интеграция с ActiveMQ

    Занятие 11

  • Авторизация в контейнере Tomcat
  • Отправка почты с вложениями по JAX-RS, по JMS
  • Рефакторинг. Эксепшены в лямбдах Java 8
  • Concurrent and distributed applications toolkit AKKA
  • Отсылка почты через AKKA Actors (Typed и Untyped Actors)
  • Асинхронные сервлеты 3.0

История изменений проекта