XML-конфигурация Bean Validation

Компоненты Bean Validation могут быть сконфигурированы при помощи XML-файлов. Такой подход может быть удобен, когда требуется добавить валидацию классов, недоступных для изменения, либо в тех случаях, когда хочется избежать появления сторонних зависимостей в коде. Основной XML-файл конфигурации — META-INF/validation.xml, в Читать дальше …

Валидация данных при помощи Bean Validation API

Для валидации данных в Java EE существует Bean Validation. Первая версия данного набора API была специфицирована в JSR-303 и опубликована как часть Java EE 6. Текущая версия — 2.0, является частью Java EE 8 и описана в JSR-380. Эталонной реализацией Читать дальше …

Spring Security OAuth 2.0 и Apereo CAS

Фреймворк Spring Security позволяет реализовать авторизацию в приложении при помощи протокола OAuth 2.0. Провайдерами авторизации могут быть как общедоступные сервисы, вроде Google, Facebook или GitHub, так и персональные, реализованные, например, при помощи Apereo CAS.

Spring Restdocs and Spring Cloud Contract with Cucumber and Spring Webflux

In this post, I will describe Spring Restdocs and Spring Cloud Contract integration into Cucumber tests with Spring Webflux. The main problem is that we can’t use the most of common JUnit and Spring Test annotations like @Before, @After and Читать дальше …

Spring Restdocs and Spring Cloud Contract with Cucumber

In this post, I will describe Spring Restdocs and Spring Cloud Contract integration into Cucumber tests. The main problem is that we can’t use the most of common JUnit and Spring Test annotations like @Before, @After and @Rule in Cucumber Читать дальше …

Интеграционное тестирование REST API с Cucumber, Spring Restdocs и Spring Cloud Contract

Модульные и интеграционные тесты серьёзно упрощают жизнь простого разработчика, позволяя выявить большую часть ошибок и проблем ещё на ранних стадиях разработки. Отдельного упоминания заслуживают фреймворки Spring Restdocs и Spring Cloud Contract, использование которых в интеграционных тестах позволяет сгенерировать сниппеты, заглушки Читать дальше …

Движок шаблонов Thymeleaf

В предыдущей статье я упомянул движок Thymeleaf, используемый в проекте для построения HTML-страниц. Я решил написать отдельный пост, посвящённый только Thymeleaf, а не углубляться в описание данной библиотеки в рамках той статьи, так как она получилась и без того достаточно Читать дальше …

Разработка приложений со Spring. Базовое веб-приложение.

В данной статье я рассмотрю процесс разработки простого веб-приложения с использованием Spring и Thymeleaf. Данный проект будет использоваться в последующих статьях, в рамках которых приложение будет описано дальнейшее развитие приложения. Исходный код проекта доступен по этой ссылке.

Spring Data JPA: Волшебные методы

В предыдущем посте я вкратце рассказал о Spring Data JPA и затронул тему «волшебных» методов, приведя простой пример их использования. Однако возможности волшебных методов значительны, благодаря чему ими можно заменить именованные запросы в большинстве случаев.

Spring Framework и работа с базами данных: Spring Data JPA

В предыдущих постах о работе с базами данных в Spring Framework я поверхностно описал использование JdbcTemplate и NamedParameterJdbcTemplate. Пользоваться данными инструментами безусловно удобно, но у них есть определённые ограничения, среди которых: Зависимость SQL-запросов от конкретной СУБД Необходимость в самостоятельной реализации преобразования данных из Читать дальше …