Язык программирования 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 11.03 - 12.03.2024

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

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

23 665 ₽

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

37 000 ₽

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

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

Blender-Base 11.03 - 13.03.2024

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

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

34 075 ₽

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

37 500 ₽

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

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

БТ-КИИ 11.03 - 13.03.2024

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

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

35 160 ₽

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

53 100 ₽

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

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

10987 11.03 - 14.03.2024

Настройка производительности и оптимизации баз данных SQL

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

34 635 ₽

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

49 500 ₽

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

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

JS_Hadoop 11.03 - 14.03.2024

Основы Hadoop и обработка больших данных

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

37 330 ₽

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

65 000 ₽

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

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

Asterisk_1 11.03 - 15.03.2024

Использование Asterisk в качестве профессиональной АТС

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

45 370 ₽

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

81 000 ₽

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

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

20412 11.03 - 15.03.2024

Настройка дополнительных сервисов Windows Server 2012 R2

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

34 480 ₽

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

60 000 ₽

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

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

LPI-102 11.03 - 15.03.2024

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

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

33 600 ₽

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

51 350 ₽

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

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

БТ17 11.03 - 15.03.2024

Расследование компьютерных инцидентов. Компьютерная криминалистика

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

47 500 ₽

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

72 900 ₽

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

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

VM2 v.7.0/6.5 11.03 - 15.03.2024

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

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

70 545 ₽

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

108 050 ₽

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

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

Java_base 11.03 - 15.03.2024

Язык программирования Java.

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

46 765 ₽

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

56 118 ₽

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

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

20486 11.03 - 15.03.2024

Разработка Web приложений с использованием ASP.NET 4.5 MVC 4

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

35 160 ₽

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

63 000 ₽

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

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

TSHOOT 11.03 - 15.03.2024

Диагностика и поддержка IP-сетей Cisco

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

62 985 ₽

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

81 880 ₽

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

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

20467 11.03 - 15.03.2024

Проектирование BI - решений на платформе Microsoft SQL Server 2014

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

35 160 ₽

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

59 500 ₽

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

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

ICND 2 v3.0 11.03 - 15.03.2024

Использование сетевого оборудования Cisco (часть II) v3.0

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

46 395 ₽

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

80 500 ₽

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

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

AACM 11.03 - 15.03.2024

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

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

57 735 ₽

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

81 400 ₽

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

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

WS-011T00 11.03 - 15.03.2024

Администрирование Windows Server 2019

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

41 410 ₽

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

61 500 ₽

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

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

AL-1702ю 18.03 - 21.03.2024

Администрирование ОС Astra Linux Special Edition 1.7

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

42 000 ₽

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

60 500 ₽

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

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

10969 18.03 - 22.03.2024

Cлужбы Active Directory в Windows Server 2012 R2

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

35 160 ₽

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

59 500 ₽

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

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

20339-1 18.03 - 22.03.2024

Планирование и администрирование SharePoint 2016

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

37 260 ₽

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

63 500 ₽

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

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

РЕДОС-102 18.03 - 22.03.2024

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

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

34 000 ₽

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

59 850 ₽

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

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

LPI-201 18.03 - 22.03.2024

Углубленное администрирование GNU/Linux

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

33 600 ₽

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

51 350 ₽

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

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

Node_base 18.03 - 22.03.2024

Node.js

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

46 765 ₽

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

56 118 ₽

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

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

SUSE-201 18.03 - 22.03.2024

Углубленное администрирование SUSE

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

33 600 ₽

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

51 350 ₽

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

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

SWITCH 18.03 - 22.03.2024

Развертывание коммутируемых IP-сетей Cisco v2.0

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

62 250 ₽

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

80 925 ₽

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

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

UCP-201 18.03 - 22.03.2024

Углубленное администрирование Ubuntu

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

33 600 ₽

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

51 350 ₽

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

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

FBD-201 18.03 - 22.03.2024

Углубленное администрирование FreeBSD

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

33 600 ₽

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

51 350 ₽

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

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

Python-3 18.03 - 22.03.2024

Разработка веб - приложений в Django. Уровень 3.

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

48 520 ₽

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

90 580 ₽

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

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

ARH-0131 18.03 - 22.03.2024

Системное администрирование Red Hat Linux

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

44 610 ₽

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

73 500 ₽

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

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

20767 18.03 - 22.03.2024

Разработка и эксплуатация хранилищ данных на SQL Server 2016

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

36 685 ₽

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

63 000 ₽

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

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

ЗПДн 25.03 - 27.03.2024

Обеспечение безопасности персональных данных при обработке в информационных системах персональных данных

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

32 010 ₽

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

53 100 ₽

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

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

ViPNet 4 25.03 - 27.03.2024

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

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

30 960 ₽

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

53 100 ₽

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

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

DA-100T00 25.03 - 28.03.2024

Анализ данных с помощью Power BI

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

34 435 ₽

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

47 950 ₽

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

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

20413 25.03 - 29.03.2024

Проектирование и внедрение серверной инфраструктуры

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

34 480 ₽

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

63 000 ₽

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

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

20339-2 25.03 - 29.03.2024

Передовые технологии SharePoint 2016

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

37 260 ₽

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

63 500 ₽

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

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

РЕДОС-103 25.03 - 29.03.2024

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

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

34 000 ₽

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

44 200 ₽

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

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

VSFT6.5 25.03 - 29.03.2024

VMWare vSphere: Fast Track

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

81 885 ₽

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

159 500 ₽

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

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

Alt_Linux 25.03 - 29.03.2024

Администрирование ОС "Альт"

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

33 600 ₽

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

45 000 ₽

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

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

LPI-Zabbix 25.03 - 29.03.2024

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

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

41 635 ₽

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

48 500 ₽

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

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

Java_web_app 25.03 - 29.03.2024

Использование языка Java для создания корпоративных WEB-приложений

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

46 765 ₽

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

56 118 ₽

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

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

VM1 v.8.0/7.0/6.5 25.03 - 29.03.2024

Построение виртуальной инфраструктуры с помощью VMware ESXi 8.0/7.0/6.5 и VMware vCenter Server 8.0/7.0/6.5

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

69 025 ₽

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

99 450 ₽

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

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

IT-04 01.04 - 01.04.2024

ITIL для ИТ отдела

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

16 560 ₽

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

30 600 ₽

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

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

ROS-101 01.04 - 02.04.2024

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

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

15 435 ₽

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

20 065 ₽

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

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

55166 01.04 - 02.04.2024

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

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

13 095 ₽

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

15 650 ₽

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

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

55269 01.04 - 02.04.2024

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

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

6 550 ₽

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

11 525 ₽

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

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

Or11g_SQLI 01.04 - 03.04.2024

Основы БД Oracle 11g: SQL часть I

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

35 160 ₽

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

53 500 ₽

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

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

ASTRA-GUI 01.04 - 03.04.2024

Администрирование ASTRA LINUX 1.7 через GUI

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

30 910 ₽

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

35 500 ₽

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

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

20779 01.04 - 03.04.2024

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

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

26 395 ₽

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

43 500 ₽

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

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

Or12c_SQLI 01.04 - 03.04.2024

Основы БД Oracle 12c: SQL часть I

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

35 160 ₽

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

53 500 ₽

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

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

Or12c_SQLк 01.04 - 05.04.2024

Основы БД Oracle 12c: SQL- комплексная программа

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

56 635 ₽

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

96 900 ₽

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

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

55201 01.04 - 05.04.2024

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

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

35 160 ₽

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

60 300 ₽

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

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

Or11g_SQLк 01.04 - 05.04.2024

Основы БД Oracle 11g: SQL- комплексная программа

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

56 635 ₽

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

94 400 ₽

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

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

ASTRA-101 01.04 - 05.04.2024

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

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

37 800 ₽

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

51 500 ₽

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

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

AL-1703ю 01.04 - 05.04.2024

Расширенное администрирование ОС Astra Linux Special Edition 1.7

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

52 500 ₽

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

63 500 ₽

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

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

JS_base 01.04 - 05.04.2024

Язык программирования JavaScript

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

46 765 ₽

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

56 118 ₽

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

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

DESIGN 3.0 01.04 - 05.04.2024

Проектирование сетей Cisco

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

79 785 ₽

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

111 100 ₽

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

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

Python-1 01.04 - 05.04.2024

Основы программирования Python. Уровень 1.

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

30 960 ₽

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

52 420 ₽

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

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

ICND 1 v3.0 01.04 - 05.04.2024

Использование сетевого оборудования Cisco (часть I) v3.0

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

46 395 ₽

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

80 500 ₽

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

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

Eltex_MES 01.04 - 05.04.2024

Использование коммутаторов Eltex MES

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

77 950 ₽

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

90 820 ₽

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

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

55270 03.04 - 04.04.2024

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

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

7 335 ₽

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

12 950 ₽

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

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

10962 03.04 - 05.04.2024

Расширенные возможности по автоматизации администрирования с помощью Windows PowerShell

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

26 760 ₽

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

48 800 ₽

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

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

БТ01 03.04 - 07.04.2024

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

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

49 880 ₽

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

89 500 ₽

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

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

Or12c_SQLII 04.04 - 05.04.2024

Основы БД Oracle 12c: SQL часть II

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

24 135 ₽

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

43 500 ₽

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

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

Or11g_SQLII 04.04 - 05.04.2024

Основы БД Oracle 11g: SQL часть II

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

24 085 ₽

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

43 500 ₽

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

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