Перейти к основному содержимому

· 3 мин. чтения

1. Обзор

При выключении по умолчанию Spring TaskExecutor просто прерывает все запущенные задачи, но вместо этого может быть неплохо дождаться завершения всех запущенных задач. Это дает возможность каждой задаче принять меры для обеспечения безопасного завершения работы.

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

2. Простой пример

Давайте рассмотрим простое приложение Spring Boot. Мы автоматически подключим bean-компонент TaskExecutor по умолчанию :

· 4 мин. чтения

1. Обзор

Управление жизненным циклом приложения Spring Boot очень важно для готовой к производству системы. Контейнер Spring обрабатывает создание, инициализацию и уничтожение всех компонентов Bean с помощью ApplicationContext.

Особое внимание в этой статье уделяется фазе разрушения жизненного цикла. В частности, мы рассмотрим различные способы закрытия приложения Spring Boot.

Чтобы узнать больше о том, как настроить проект с помощью Spring Boot, ознакомьтесь со статьей Spring Boot Starter или ознакомьтесь с Spring Boot Configuration .

2. Выключить конечную точку

· 2 мин. чтения

1. Введение

В нашем туториале по тестированию в Spring Boot мы увидели, как можно использовать аннотацию @DataJpaTest .

В следующем уроке мы увидим, как устранить ошибку «Невозможно найти @SpringBootConfiguration » .

2. Причины

Аннотация @DataJpaTest помогает нам настроить тест JPA. Для этого он инициализирует приложение, игнорируя ненужные части. Например, он будет игнорировать контроллеры MVC.

· 2 мин. чтения

1. Обзор

Swagger — это набор спецификаций для документирования и описания REST API. Он также предоставляет примеры значений для параметров конечной точки.

В этом руководстве мы покажем, как создать пример значения по умолчанию для массивов строк , поскольку это поведение не включено по умолчанию.

2. Укажите массив строк в качестве параметров тела в Swagger

Проблема возникает, когда мы хотим указать массив строк в качестве параметров тела в Swagger.

· 5 мин. чтения

1. Обзор

В этом кратком руководстве мы узнаем, как использовать RESTful API из простого внешнего интерфейса AngularJS.

Мы собираемся отображать данные в таблице, создавать ресурс, обновлять его и, наконец, удалять.

2. REST-API

Во-первых, давайте быстро взглянем на наш простой API — предоставление ресурса Feed с нумерацией страниц:

· 3 мин. чтения

1. Введение

Эта статья является продолжением нашей продолжающейся регистрации в серии Spring Security .

В этой статье мы рассмотрим, как разработать пользовательскую страницу входа для пользователя, который возвращается в наше приложение. Пользователя встретит стандартное сообщение «Добро пожаловать…».

Одним из способов определить, возвращается ли пользователь на наш веб-сайт, является добавление долгоживущего файла cookie (например, 30 дней) после того, как пользователь успешно вошел в систему. Для разработки этой логики нам необходимо реализовать AuthenticationSuccessHandler , который добавляет файл cookie после аутентификация.

· 3 мин. чтения

1. Обзор

В этом уроке мы рассмотрим последствия перехвата Throwable `` .

2. Метательный класс

В документации по Java класс Throwable определяется как « суперкласс всех ошибок и исключений в языке Java ».

Давайте посмотрим на иерархию класса Throwable :

· 3 мин. чтения

1. Введение

В этом кратком руководстве мы рассмотрим все возможности преобразования IntStream в другие типы .

В качестве дополнения к этому руководству рекомендуется прочитать интересные материалы о упаковке, распаковке или итерации .

2. IntStream в массив

Давайте начнем изучать, как мы можем преобразовать объект IntStream в массив целых чисел .

· 6 мин. чтения

1. Введение

В настоящее время очень распространено написать приложение и развернуть его в облаке, не беспокоясь об инфраструктуре. Бессерверные технологии и FaaS стали очень популярными.

В этом типе среды, где экземпляры часто создаются и уничтожаются, время загрузки и время первого запроса чрезвычайно важны, поскольку они могут создать совершенно другой пользовательский опыт.

Такие языки, как JavaScript и Python, всегда находятся в центре внимания в таких сценариях. Другими словами, Java с ее толстыми JAR-файлами и долгим временем загрузки никогда не была главным соперником.

В этом руководстве мы представим Quarkus и обсудим, является ли он альтернативой для более эффективного переноса Java в облако .

2. КваркусIO

· 3 мин. чтения

1. Обзор

В этом кратком руководстве мы рассмотрим, как реализовать и показать правильные ограничения пароля во время регистрации . Например, пароль должен содержать специальный символ или иметь длину не менее 8 символов.

Мы хотим иметь возможность использовать мощные правила для паролей, но мы не хотим реализовывать эти правила вручную. Итак, мы собираемся использовать зрелую библиотеку Passay .

2. Пользовательское ограничение пароля