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

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

 

Аудитория

Курс предназначен для специалистов в области корпоративных приложений на 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.8 языка Java на уровне JavaSE8Core. Желательно понимание обобщённых типов Java и фреймворка коллекций Java.

Программа курса

Модуль 1. Основы Spring Framework (3 ак. часа)

  • Введение в Spring Framework;
  • Архитектура каркаса;
  • Компонентная модель Spring.

Модуль 2. Spring DI & IOC (5 ак. часов)

  • Что это?
  • Различие между DI и IOC
  • Концепция Бина
  • Бины как разделяемые сервисы
  • Время жизни и жизненный цикл бина
  • Аннотации Spring
    • @Bean
    • @Service
    • @Component
    • @Configuration
    • @PostConstruct
    • etc.
  • Базовое знакомство с Spring XML и аннотациями (4 ак. часа)
  • Способы создания бинов:
    • Через метод
    • Через конструктор
    • Декларативно
    • Императивно
  • Автосвязывание
  • Управление порядком загрузки бинов
  • BeanPostprocessor's

Модуль 3. Spring Data (4 ак. Часа)

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

Модуль 4. JPA (4 ак. часа)

  • 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 (2 ак. часа)

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

Модуль 6. Философия Spring Boot (2 ак. часа)

  • Соглашения над конфигурацией: Spring Boot Starters
  •  Embedded servlet containers: tomcat/jetty/undertow
  •  Конфигурация и конфигурации по умолчанию
    • Java конфигурации
    • Создание классов конфигурации компонентов Spring
    • Предыинициализация классов конфигурации из файлов *.properties и .yml
    • Чтение конфигурации из environment
    • Использование распределённой конфигурации из Spring Cloud Config
    • Классическая конфигурация на XML
    • Конфигурация на Groovy DSL

Модуль 7. Сборка и отладка проектов (6 ак. часов)

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

Модуль 8. Способы реализации REST(Json, XML) API в Spring/Spring boot (3 ак. Часа)

  •  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
    • Facebook GraphQL
    • Microsoft Odata
    • Старые злые Web Services (WS)
    • Проблемы аутентификации/авторизации на молодёжных GraphQL и Odata. Spring Security не помогает.

Модуль 9. Использование API из клиентов (3 ак. часа)

  • Java/Groovy
  • JavaFX
  • Vaadin
  • Android
  • JS (browser/nodejs)
  • Аспекты потребления API из React/Redux и Angular 5

Модуль 10. Микросервисы. Netflix stack, Spring Cloud и микро-сервисная архитектура Jhipster (2 ак. часа)

  •   Если есть возможность обойтись без микро-сервисов, не открывайте этот ящик Пандоры!
  •   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
  •   Обзор средств запуска и контроля за микро-сервисами
    • Docker/Docker swarm
    • Mesos/DCOS
    • Kubernetes
    • Hadoop/YARN

Модуль 11. Security (2 ак. часа)

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

Ближайшие курсы

PG_DBA3 28.04 - 29.04.2025

Администрирование PostgreSQL. Резервное копирование и репликация

Стоимость обучения в группе

26 030 ₽

Стоимость индивидуального обучения

40 000 ₽

Длительность

2 дня (16 ак. ч.)

100 28.04 - 29.04.2025

Основы работы с персональным компьютером. Работа в Интернет

Стоимость обучения в группе

9 980 ₽

Стоимость индивидуального обучения

15 000 ₽

Длительность

2 дня (16 ак. ч.)

JS 28.04 - 30.04.2025

JavaScript. Основы веб - программирования

Стоимость обучения в группе

40 400 ₽

Стоимость индивидуального обучения

55 000 ₽

Длительность

3 дня (24 ак. ч.)

БТ-КИИ 28.04 - 30.04.2025

Обеспечение безопасности объектов критической информационной инфраструктуры

Стоимость обучения в группе

38 680 ₽

Стоимость индивидуального обучения

58 100 ₽

Длительность

3 дня (24 ак. ч.)

ViPNet 4 28.04 - 30.04.2025

Администрирование системы защиты информации ViPNet 4 (Программно-аппаратные комплексы VipNet)

Стоимость обучения в группе

34 050 ₽

Стоимость индивидуального обучения

58 100 ₽

Длительность

3 дня (72 ак. ч.)

PG_DBA2 28.04 - 30.04.2025

Администрирование PostgreSQL. Настройка и мониторинг

Стоимость обучения в группе

39 830 ₽

Стоимость индивидуального обучения

58 500 ₽

Длительность

4 дня (32 ак. ч.)

20779 28.04 - 30.04.2025

Анализ Данных с помощью Excel

Стоимость обучения в группе

29 050 ₽

Стоимость индивидуального обучения

45 400 ₽

Длительность

3 дня (24 ак. ч.)

10997 28.04 - 30.04.2025

Администрирование и устранение ошибок в Office 365

Стоимость обучения в группе

30 590 ₽

Стоимость индивидуального обучения

43 000 ₽

Длительность

3 дня (24 ак. ч.)

ROS-101 05.05 - 06.05.2025

Основы работы в РЕД ОС

Стоимость обучения в группе

17 000 ₽

Стоимость индивидуального обучения

26 000 ₽

Длительность

2 дня (16 ак. часов)

MS.NET 05.05 - 07.05.2025

Продвинутая разработка в Microsoft.NET

Стоимость обучения в группе

30 900 ₽

Стоимость индивидуального обучения

40 170 ₽

Длительность

3 дня (24 ак. ч.)

Blender-Base 05.05 - 07.05.2025

Базовое моделирование и визуализация

Стоимость обучения в группе

37 485 ₽

Стоимость индивидуального обучения

43 500 ₽

Длительность

3 дня (24 ак. ч.)

БТ10 05.05 - 07.05.2025

Аудит информационной безопасности

Стоимость обучения в группе

36 370 ₽

Стоимость индивидуального обучения

58 100 ₽

Длительность

3 дня (24 ак. ч.)

PG_DBA1 05.05 - 07.05.2025

Администрирование PostgreSQL 16. Базовый курс

Стоимость обучения в группе

29 900 ₽

Стоимость индивидуального обучения

48 000 ₽

Длительность

3 дня (24 ак. ч.)

55160 05.05 - 07.05.2025

Microsoft Excel 2016 Уровень 2. Расширенный

Стоимость обучения в группе

17 595 ₽

Стоимость индивидуального обучения

23 500 ₽

Длительность

3 дня (24 ак. ч.)

LPI-301 05.05 - 07.05.2025

Программирование в Linux на C\С++

Стоимость обучения в группе

47 120 ₽

Стоимость индивидуального обучения

58 500 ₽

Длительность

4 дня (32 ак. ч.)

55201 05.05 - 07.05.2025

Microsoft Project Professional 2016. Управление проектами

Стоимость обучения в группе

38 680 ₽

Стоимость индивидуального обучения

73 500 ₽

Длительность

5 дней (40 ак. ч.)

55201 05.05 - 07.05.2025

Microsoft Project Professional 2016. Управление проектами

Стоимость обучения в группе

38 680 ₽

Стоимость индивидуального обучения

73 500 ₽

Длительность

5 дней (40 ак. ч.)

55293 05.05 - 07.05.2025

SharePoint 2019 конечный пользователь (SharePoint End User 2019)

Стоимость обучения в группе

34 450 ₽

Стоимость индивидуального обучения

47 740 ₽

Длительность

3 дня (24 ак. часа)

IT-02 05.05 - 07.05.2025

Основы ITIL

Стоимость обучения в группе

31 750 ₽

Стоимость индивидуального обучения

60 500 ₽

Длительность

3 дня (24 ак. ч.)

Avaya IP_адм 05.05 - 07.05.2025

Установка и администрирование Avaya IP Office 500

Стоимость обучения в группе

57 300 ₽

Стоимость индивидуального обучения

94 500 ₽

Длительность

3 дня (24 ак. ч.)

20465 05.05 - 07.05.2025

Проектирование решений на основе баз данных SQL Server 2014

Стоимость обучения в группе

31 750 ₽

Стоимость индивидуального обучения

48 500 ₽

Длительность

3 дня (24 ак. ч.)

IT-01 05.05 - 07.05.2025

Управление персоналом ИТ отдела. Использование рекомендаций библиотеки ITIL с блоком Практикум

Стоимость обучения в группе

35 200 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

3 дня (24 ак. ч.)

55269 12.05 - 12.05.2025

Microsoft Excel 2019. Уровень 2

Стоимость обучения в группе

7 205 ₽

Стоимость индивидуального обучения

15 250 ₽

Длительность

2 дня (16 ак. ч.)

55166 12.05 - 13.05.2025

Microsoft Excel 2016. Уровень 2

Стоимость обучения в группе

14 405 ₽

Стоимость индивидуального обучения

18 650 ₽

Длительность

2 дня (16 ак. ч.)

S03 12.05 - 14.05.2025

Современные средства Microsoft для обеспечения информационной безопасности предприятия

Стоимость обучения в группе

32 500 ₽

Стоимость индивидуального обучения

53 100 ₽

Длительность

3 дня (24 ак. ч.)

МО 12.05 - 16.05.2025

DATA SCIENCE. Применение машинного обучения

Стоимость обучения в группе

36 900 ₽

Стоимость индивидуального обучения

65 500 ₽

Длительность

5 дней (40 ак. ч.)

VM_Horizon 7 12.05 - 16.05.2025

VMware Horizon 7: Установка, настройка и управление 7.3

Стоимость обучения в группе

130 500 ₽

Стоимость индивидуального обучения

160 900 ₽

Длительность

5 дней (40 ак. ч.)

БТ01 12.05 - 16.05.2025

Безопасность информационных технологий

Стоимость обучения в группе

54 870 ₽

Стоимость индивидуального обучения

95 500 ₽

Длительность

5 дней (40 ак. ч.)

20741 12.05 - 16.05.2025

Настройка сети в Windows Server 2016

Стоимость обучения в группе

39 100 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

20703-1 12.05 - 16.05.2025

Администрирование System Center Configuration Manager

Стоимость обучения в группе

38 700 ₽

Стоимость индивидуального обучения

68 000 ₽

Длительность

5 дней (40 ак. ч.)

20416 12.05 - 16.05.2025

Реализация среды настольных приложений

Стоимость обучения в группе

37 930 ₽

Стоимость индивидуального обучения

67 000 ₽

Длительность

5 дней (40 ак. ч.)

10964 12.05 - 16.05.2025

Мониторинг ЦОД с System Center Operations Manager

Стоимость обучения в группе

37 850 ₽

Стоимость индивидуального обучения

68 000 ₽

Длительность

5 дней (40 ак. ч.)

LPI-Zabbix 12.05 - 16.05.2025

Zabbix. Мониторинг IT инфраструктуры предприятия

Стоимость обучения в группе

45 800 ₽

Стоимость индивидуального обучения

55 500 ₽

Длительность

5 дней (40 ак. ч.)

55270 19.05 - 19.05.2025

Microsoft Excel 2019. Уровень 3

Стоимость обучения в группе

8 070 ₽

Стоимость индивидуального обучения

15 450 ₽

Длительность

1 день (8 ак. ч.)

ППиР 19.05 - 19.05.2025

Паттерны проектирования и рефакторинг

Стоимость обучения в группе

25 000 ₽

Стоимость индивидуального обучения

32 500 ₽

Длительность

1 день (8 ак. ч.)

55167 19.05 - 20.05.2025

Microsoft Excel 2016. Уровень 3

Стоимость обучения в группе

16 000 ₽

Стоимость индивидуального обучения

19 000 ₽

Длительность

2 дня (16 ак. ч.)

AC7 19.05 - 22.05.2025

AutoCAD Civil 3D. Проектирование генплана и вертикальной планировки

Стоимость обучения в группе

39 830 ₽

Стоимость индивидуального обучения

72 050 ₽

Длительность

4 дня (36 ак. ч.)

3DS_max 19.05 - 22.05.2025

Autodesk 3ds Max – моделирование и визуализация

Стоимость обучения в группе

33 120 ₽

Стоимость индивидуального обучения

43 050 ₽

Длительность

4 дня (32 ак. ч.)

1C_LQ 19.05 - 22.05.2025

1С:Предприятие 8. Язык запросов

Стоимость обучения в группе

35 000 ₽

Стоимость индивидуального обучения

45 500 ₽

Длительность

40 ак. ч. (5 дней)

10266 19.05 - 23.05.2025

Программирование на языке C# 4.0 в среде разработки MS Visual Studio 2010

Стоимость обучения в группе

40 400 ₽

Стоимость индивидуального обучения

48 850 ₽

Длительность

5 дней (40 ак. ч.)

HCNA_1 19.05 - 23.05.2025

Технологии и оборудование корпоративных локальных сетей Huawei - часть 1.

Стоимость обучения в группе

75 235 ₽

Стоимость индивидуального обучения

108 600 ₽

Длительность

5 дней (40 ак. ч.)

VM2 v.8.0/7.0/6.5 19.05 - 23.05.2025

Продвинутый курс по оптимизации и решению проблем виртуальных сред VMware vSphere

Стоимость обучения в группе

77 600 ₽

Стоимость индивидуального обучения

115 000 ₽

Длительность

5 дней (40 ак. ч.)

20764 19.05 - 23.05.2025

Администрирование инфраструктуры базы данных SQL

Стоимость обучения в группе

40 350 ₽

Стоимость индивидуального обучения

65 300 ₽

Длительность

5 дней (40 ак. ч.)

Or12c_DBA1 19.05 - 23.05.2025

Администрирование Oracle 12c. Часть I.

Стоимость обучения в группе

57 900 ₽

Стоимость индивидуального обучения

98 500 ₽

Длительность

5 дней (40 ак. ч.)

10961 19.05 - 23.05.2025

Автоматизация администрирования с Windows PowerShell

Стоимость обучения в группе

41 000 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

LPI-101 19.05 - 23.05.2025

Администрирование GNU/Linux

Стоимость обучения в группе

36 960 ₽

Стоимость индивидуального обучения

55 500 ₽

Длительность

5 дней (40 ак. ч.)

Or12c_DBA 19.05 - 23.05.2025

Administration Workshop

Стоимость обучения в группе

81 400 ₽

Стоимость индивидуального обучения

136 600 ₽

Длительность

5 дней (40 ак. ч.)

Or11g_DBAI 19.05 - 23.05.2025

Администрирование Oracle 11g. Часть I

Стоимость обучения в группе

57 900 ₽

Стоимость индивидуального обучения

80 500 ₽

Длительность

5 дней (40 ак. ч.)

РЕДОС-101 19.05 - 23.05.2025

Системное администрирование РЕД ОС

Стоимость обучения в группе

37 400 ₽

Стоимость индивидуального обучения

65 000 ₽

Длительность

5 дней (40 ак. ч.)

AACM 19.05 - 23.05.2025

Базовое администрирование АТС Avaya Aura Communication Manager 7

Стоимость обучения в группе

69 000 ₽

Стоимость индивидуального обучения

94 500 ₽

Длительность

5 дней (40 ак. ч.)

55273 21.05 - 21.05.2025

Microsoft Word 2019. Уровень 2

Стоимость обучения в группе

7 205 ₽

Стоимость индивидуального обучения

15 700 ₽

Длительность

1 день (8 ак. ч.)

55274 22.05 - 22.05.2025

Microsoft Word 2019. Уровень 3

Стоимость обучения в группе

8 070 ₽

Стоимость индивидуального обучения

15 000 ₽

Длительность

1 день (8 ак. ч.)

Юнит_Тренинг-9 23.05 - 24.05.2025

Сервисная работа с клиентом

Стоимость обучения в группе

40 000 ₽

Стоимость индивидуального обучения

60 500 ₽

Длительность

2 дня (16 ак. часов)