Вкратце о JVM, JRE и JDK

Дюк приветствует вас

Мир Java-разработки полнится аббревиатурами, и в этой статье я предлагаю разобраться, наверно, с самыми основными из них: JVM, JRE и JDK.

Читать далее Вкратце о JVM, JRE и JDK

CORS в Spring Webflux

В предыдущих двух статьях я постарался вкратце объяснить, что такое протокол CORS и как он работает, а также как сконфигурировать его поддержку в веб-приложениях на основе Spring и Servlet API. В этой статье я предлагаю разобраться с настройками CORS на стороне реактивного веб-приложения на основе Spring Webflux.

Читать далее CORS в Spring Webflux

CORS в Spring Web

В предыдущей статье я постарался вкратце объяснить, что такое протокол CORS и как он работает. В этой статье я предлагаю разобраться с настройками CORS на стороне Spring Web, Spring Security и Spring Boot.

Читать далее CORS в Spring Web

SC24EP01 Разработка веб-приложения

В первом ролике цикла я демонстрирую разработку классического веб-приложения со Spring WebMVC, Thymeleaf и Jakarta Bean Validation. В ролике демонстрируется несколько способов создания нового проекта на основе Spring Boot, вкратце описывается многоуровневая архитектура и шаблон проектирования MVC, создание базовых компонентов приложения, валидация данных и интернационализация. Кроме этого продемонстрировано несколько способов запуска приложения на основе Spring Boot.

Читать далее SC24EP01 Разработка веб-приложения

Разработка проектов со Spring

Рассказывая о результатах своей видео-блоггерской деятельности за 2023 год, я упомянул о желании записать как минимум один цикл роликов в 2024 году. И этот цикл роликов у меня уже готов! Ну, а посвящён он снова разработке проектов со Spring, но на этот раз, в отличие от серии «Spring по верхам» я решил охватить больший набор тем, а заодно раскрыть их более подробно.

В этом видео я рассказываю о том, что вас ждёт в этом цикле роликов.

Читать далее Разработка проектов со Spring

Spring Boot, Maven и Docker

Разработку и развёртывание современного серверного программного обеспечения невозможно представить себе без использования контейнеров, тем более, когда речь идёт о развёртывании в Kubernetes. В этой статье я продемонстрирую несколько вариантов того, как можно упаковать Maven-проект на основе Spring Boot в контейнер в формате OCI (Open Container Initiative), ну или попросту в Docker-контейнер.

Читать далее Spring Boot, Maven и Docker

Валидация методов — Jakarta Bean Validation

В этой статье, посвящённой Jakarta Bean Validation, будет подробно рассмотрен процесс валидации методов, а также применение ограничений к аргументам и возвращаемым значениям методов и конструкторов. Кроме этого будет рассмотрено каскадирование валидации, а так же нюансы валидации методов при использовании наследования.

Читать далее Валидация методов — Jakarta Bean Validation

Валидация объектов — Jakarta Bean Validation

В этой статье, посвящённой Jakarta Bean Validation, будет подробно рассмотрен процесс валидации объектов: применение ограничений к элементам классов, их валидация, а также валидация записей (record).

Читать далее Валидация объектов — Jakarta Bean Validation

Знакомство с Jakarta Bean Validation 3.0

Jakarta Bean Validation — это спецификация, описывающая API для валидации объектов в рамках Jakarta EE. Вы можете использовать данную спецификацию для валидации в проектах вне зависимости от используемого фреймворка или сервера приложений. Более того, вы можете использовать Jakarta Bean Validation в полностью самостоятельных проектах, не основанных на Jakarta EE или каком-либо фреймворке.

Идейным предшественником Jakarta Bean Validation 3.0 является Bean Validation 2.0 из Java EE, однако все изменения в спецификации заключаются в переименованиях, связанных с миграцией проекта из Java EE в Jakarta EE.

В рамках этой статьи будет рассмотрен минимальный набор зависимостей, необходимый для использования Jakarta Bean Validation, описаны основные интерфейсы и ограничения или правила валидации.

Читать далее Знакомство с Jakarta Bean Validation 3.0

CSRF – Spring Security в деталях

Наверняка каждый разработчик веб-приложений или сайтов на практике сталкивался с защитой от CSRF-атак, предоставляемой фреймворками и библиотеками. В фреймворке Spring Security защита от этого вида эксплойтов тоже присутствует, однако многие начинающие разработчики предпочитают отключать её, не пытаясь разобраться в природе CSRF-атак, способах защиты от них и правильном использовании средств защиты.

В этой статье будет описан принцип действия CSRF-атаки и продемонстрированы несколько вариантов приведения таких атак. Затем будут перечислены признаки уязвимости веб-приложений перед CSRF-атаками и способы защиты от них. После этого будет подробно описана защита от CSRF-атак, предоставляемая Spring Security: компоненты, реализующие её, и их настройка. В завершение статьи будет описано несколько сценариев использования защиты от CSRF-атак в разных видах веб-приложений: в сайтах со статическими страницами, в сайтах с асинхронными запросами и в одностраничных веб-приложениях (SPA, PWA).

Читать далее CSRF – Spring Security в деталях