Курс: Язык программирования Java. Создание приложений для работы с базами данных – технологии ORM (Hibernate, TopLink )

Курс: Язык программирования Java. Создание приложений для работы с базами данных – технологии ORM (Hibernate, TopLink )

Курс: Язык программирования Java. Создание приложений для работы с базами данных – технологии ORM (Hibernate, TopLink )


Продолжительность курса: 40 ак. ч.

Описание курса:
Цель: дать слушателям знания по разработке корпоративных Java EE приложений на основе каркаса Spring/Spring boot

Аудитория:
Курс предназначен для специалистов в области корпоративных приложений на Java

Необходимая подготовка:
Обязательное знание диалекта 1.8 языка Java на уровне JavaSE8Core. Желательно понимание обобщённых типов Java и фреймворка коллекций Java

Результат обучения:
• Знакомство с архитектурой корпоративных приложений на Spring, Spring IOC, Spring AOP, Spring Data JPA (ORM), Spring REST/JSON/HATEOAS API
• Знакомство с моделью MVC в парадигме Single Page Application (SPA) + REST/JSON API
• Знакомство с реализацией Websockets в Servlet-контейнере
• Изучение систем сборок проектов maven/gradle, упаковка микросервисов в контейнеры Docker
• Знакомство с защитой данных, аутентификацией и авторизацией

Программа курса:
Модуль 1. Основы Spring Framework
• Введение в Spring Framework
• Архитектура каркаса
• Компонентная модель Spring

Модуль 2. Spring DI & IOC
• Что это?
• Различие между DI и IOC
• Концепция Бина
• Бины как разделяемые сервисы
• Время жизни и жизненный цикл бина
• Аннотации Spring
• Базовое знакомство с Spring XML и аннотациями
• Способы создания бинов
• Автосвязывание
• Управление порядком загрузки бинов
• BeanPostprocessor's

Модуль 3. Spring Data
• Абстракции доступа к данным в Spring
• Spring Data
• Spring Data Adapters (JPA, Mongodb, Net4j, etc.)
• Spring JDBC Template
• Connection pools (Hikari, etc.)
• JDBC & native nosql database connectors

Модуль 4. JPA
• Entity Manager Fabric
• Entity Manager
• Entity (Единица персистентности, PU)
• Аннотации JPA
• Структура базы данных, объекты и их отношения
• Lazy loading
• Транзакции и блокировки
• JPQL (JPA Query Language)
• @Query и @NativeQuery
• Проблемы возвращения результатов в жёстко типизированной Java
• Criteria API
• Различие EM и Spring Repository
• Устранение проблем Spring Repository
• Отображение поисковых запросов JPA на методы поиска в интерфейсе репозитория Spring Data

Модуль 5. MongoDB
• Структура запросов
• Отображение поисковых запросов MongoDB на методы поиска в интерфейсе репозитория Spring Data

Модуль 6. Философия Spring Boot
• Соглашения над конфигурацией: Spring Boot Starters
• Embedded servlet containers: tomcat/jetty/undertow
• Конфигурация и конфигурации по умолчанию

Модуль 7. Сборка и отладка проектов
• Консольные средства сборки
• Интеграция описания проекта на Maven/Gradle с IDE (Intellij/Eclipse/Netbeans)
• Средства контроля версий, DVCS. Git
• Поддержка Spring/spring boot в Intellij Idea и STS(Eclipse)

Модуль 8. Способы реализации REST(Json, XML) API в Spring/Spring boot
• Spring Data REST/HATEOAS
• Spring MVC: @Controller, @RestController
• Jhipster DAO/DTO/Swagger
• Скаффолдинг доменной модели в Spring Data REST и Jhipster (автоматическая генерация сущностей, репозитариев и клиентского API для Angupar/AngularJS, React)
• Самодокументированные API: HATEOAS(Spring Data REST) и Swagger(Jhipster и "чистый" Spring)
• Способы построения API, альтернативные REST

Модуль 9. Использование API из клиентов
• Java/Groovy
• JavaFX
• Vaadin
• Android
• JS (browser/nodejs)
• Аспекты потребления API из React/Redux и Angular 5

Модуль 10. Микросервисы. Netflix stack, Spring Cloud и микро-сервисная архитектура Jhipster
• Spring Cloud Config
• Zookeeper (Distributed ierarchical key-value storage с избыточностью). Windows Registry на стероидах.
• Netflix Eureka (Service Discovery)
• Netflix Zool (Service Gateway) и Jhipster Gateway
• Netflix Hystrix (Circuit Breaker)
• Netflix Ribbon (Client Side Load Balancer) и Jhipster Gateway
• Обзор средств запуска и контроля за микро-сервисами

Модуль 11. Security
• Современные протоколы авторизации и аутентификации
• Stateless-аутетнтификация в REST-сервисах
• Общие концепции и конфигурация библиотеки
• Связывание security-объектов с базой данных
• Хранение токенов
• Method-based vs URL-based security
• Сервер UAA (User Accounts & Autentification) из Jhipster
• Сервер UAA на чистом Spring Boot

Окончательная цена указывается в договоре на обучение.

Характеристики курса

  • Начало: Ведется набор
  • Вендор: Java
  • Код курса: JV-10
  • Город: Екатеринбург, Пермь, Челябинск, Самара, Ижевск, Москва,
  • Направление: Курсы для IT-специалистов
  • Академических часов: 40
  • Количество мест: 8
  • Очно: 83900 ₽
  • Дистанционно: 83900 ₽
Записаться на курс

Курсы повышения квалификации
и профессиональной переподготовки


График работы:
Мы отвечаем на звонки и письма в будние дни с 7:00 до 16:00 по Мск

8 800 (600)-66-16

Владелец сайта:
АНО ДПО «Учебный центр «ШИФТ»
ИНН 5904355180
ОГРН 1175958039586
Юридический адрес: 614010, г. Пермь, ул. Клары Цеткин, д. 14, офис 32.
E-mail: info@eshift.ru