Программа курса
Часть I. SPRING IOC (теория 7 ч, практика 2 ч, домашняя работа около 2 ч)
- Обзор фреймворка Spring
- История
- Концепция IoC
- Интерфейс ApplicationContext
- Бины в Spring
- Spring configuration
- Конфигурация в XML
- Конфигурация через аннотации
- Конфигурация в коде (Java based)
- Scope бинов
- Жизненный цикл бина
- События (Events)
- Создание Event-а
- Подписка на Event при помощи @EventListener
- Фильтр Event-ов
- Примеры использования
- Локализация
- Конфигурация профилей
- Spring Expression Language
Часть II. SPRING BOOT (теория 1 ч, практика 1 ч)
- Что такое Spring Boot
- Основной стартер в POM (spring-boot-starter-parent)
- Автоконфигурация
- @SpringBootApplication
- @ComponentScan
- @Configuration
- @EnableAutoConfiguration
- Конфигурация
- Command Line Properties
- Application Property Files
- Profile-specific Properties
- Плейсхолдеры в Properties
- YAML вместо Properties
- Type-safe Configuration Properties
- Использование @ConfigurationProperties
- Third-party Configuration
- Валидация @ConfigurationProperties
- @ConfigurationProperties и @Value
- Profiles
Часть III. SPRING AOP (теория 2 ч, практика 1 ч, домашняя работа около 2 ч)
- Примеры использования AOP
- Типы Аdvicе-ов
- Язык Pointcut-ов
- Объединение Aspects-ов
Часть IV. SPRING DATA (теория 8 ч, практика 3 ч, домашняя работа около 2 ч)
- CrudRepository
- JpaRepository
- @EnableJpaRepositories
- @EnableTransactionManagement
- @Transactional
- Timeout
- Флаг Readonly
- Объявление Query-методов
- Стратегии создания SQL запроса
- Cоздание SQL запроса
- Property Expressions
- Обработка специальных параметров
- Ограничение результатов SQL запроса
- Возвращиене Collections или Iterables
- Обработка Null в метдах репозитория
- Streaming результатов SQL запроса
- Асинхронная обработок SQL запроса
- Использование @Query
- Native SQL запроса
- Сортировка
- Использование именованных параметров
- Использование SpEL
- SQL запросы на изменение данных
- Проекции
- Хранимые процедуры
- SQL запрос по примеру
- @Transactional
- Блокировки
Часть V. SPRING REST (теория 2 ч, практика 2 ч, домашняя работа около 1 ч)
- REST-сервисы
- Request и Response
- Request-параметры
- Path-параметры
- HTTP-хидеры
- Spring HATEOAS
- Документация REST-сервисов при помощи Swagger