Навіщо вивчати Spring Framework
Spring Framework-де-факто стандарт розробки промислових додатків для мови Java
Більше 90% вакансій Java-розробника вимагають знання Spring Framework
Spring Framework це ваш місток до цікавих проектів і крутим компаніям
чому вчити Spring Framework варто саме в Слерм
Ми не з чуток знаємо і регулярно бачимо, як багато розробників просто машинально використовують Spring Framework, навіть не вникаючи в його можливості. Все б нічого, але коли виникає проблема або не шаблонна завдання, вони не розуміють, куди дивитися і що робити.
Ми вирішили виправити це непорозуміння. На курсі розберемо всі нюанси роботи з фреймворком Spring і розглянемо різні сценарії його використання. З домашніми завданнями, практикою та онлайн-зустрічами з викладачем — все, як ви любите.
Просто подивитися і забути не вийде
Курс орієнтований на Java розробників рівня Junior + і Middle
Ми сподіваємося, що у вас є
- навички програмування на Java (ООП, стандартна бібліотека, основи багатопоточності, JDBC, Maven, IntelliJ IDEA)
- досвід роботи з системою контролю версій Git і сервісом GitHub/GitLab
- навички роботи з SQL (PostgreSQL)
- навички роботи з Docker
- знання протоколу HTTP
Модуль 1. Jakarta EE (Java EE) та Spring Framework
• Servlets
• Filters
• Servlet Context
• Multithreading
3. Основи безпеки:
Цілі:
Модуль 2. Spring Framework
• BeanFactory
* Життєвий цикл Біна
• Autowiring
* * PostProcessor, * Aware і т. д.
6. Spring Context:
• ApplicationContext
* Конфігурування: XML Config, Java Config, Annotation Config, Programmatic Config
Реалізація проекту: Інтеграція Spring Context у веб-сервіс.
Цілі:
Модуль 3. Spring MVC
Цілі:
Модуль 4. Spring Boot
Цілі:
Модуль 5. AOP, JDBC, TX, Validation
• Programmatic
4. Валідація даних
Реалізація проекту: впровадження в проект транзакцій і валідації даних
Цілі:
Модуль 6. RESTful веб-сервіси
1.Rest і Richardson Maturity Model
Цілі:
- Jakarta EE (Full Profile, Web Profile) і Spring Framework
- Jakarta EE Servlets:
• Servlets
• Filters
• Servlet Context
• Multithreading
3. Основи безпеки:
- Конфіденційність, доступність, цілісність
- Ідентифікація, аутентифікація, авторизація
- Криптографія
- Безпека в Java, Jakarta ee
Цілі:
- Зрозуміти місце Spring в екосистемі Java і взаємозв'язок з Jakarta EE;
- Написати повноцінне додаток без Spring для розуміння того, які завдання і проблеми вирішує Spring.
Модуль 2. Spring Framework
- Передумови появи
- Dependency Injection/Dependency Lookup
- Inversion Of Control
- Spring Core (Reflection, ASM, CGLib, Objenesis)
- Spring Beans:
• BeanFactory
* Життєвий цикл Біна
• Autowiring
* * PostProcessor, * Aware і т. д.
6. Spring Context:
• ApplicationContext
* Конфігурування: XML Config, Java Config, Annotation Config, Programmatic Config
Реалізація проекту: Інтеграція Spring Context у веб-сервіс.
Цілі:
- Зрозуміти призначення основних бібліотек Spring Framework;
- Розібрати пристрій Spring Context і його життєвого циклу;
- Навчитися на практиці використовувати Spring Context.
Модуль 3. Spring MVC
- Dispatcher Servlet
- Шлях обробки запиту
- *Mappers, *Adapters, *Handlers, *Resolvers
- Анотації Spring MVC
- Spring WebMVC.fn
- Питання побудови API
Цілі:
- Розібрати пристрій і принципи роботи Spring MVC;
- Навчитися на практиці використовувати Spring MVC;
- Навчитися розширювати функціональність, додаючи власні класи.
Модуль 4. Spring Boot
- Передумови появи
- BOM
- Автоконфігурація, внутрішній устрій
- Conditional*
- Externalized Config
- Maven/Gradle plugins
Цілі:
- Зрозуміти призначення Spring Boot і його пристрій;
- Навчитися додавати власні автоконфігурації.
Модуль 5. AOP, JDBC, TX, Validation
- Aspect Oriented Programming
- Робота з JDBC
- Транзакції:
• Programmatic
4. Валідація даних
Реалізація проекту: впровадження в проект транзакцій і валідації даних
Цілі:
- Розібрати AOP і подивитися його застосування;
- Навчитися працювати з транзакціями через Spring;
- Розглянути механізми валідації вхідних даних.
Модуль 6. RESTful веб-сервіси
1.Rest і Richardson Maturity Model
- OpenAPI
- Обробка винятків
- Робота з файлами
Цілі:
- Розглянути плюси і мінуси REST (на різних рівнях зрілості);
- Навчитися грамотно обробляти винятки;
- Навчитися працювати з бінарними даними (файлами).
https://privatelink.de/?https://slurm.io/spring-framework