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

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

1. Обзор

В этой статье будет показано, как настроить функцию «Запомнить меня» в Spring Security — используя не стандартный подход только к файлам cookie, а более безопасное решение, использующее постоянство .

В качестве краткого введения: Spring можно настроить так, чтобы он запоминал данные для входа между сеансами браузера. Это позволяет вам войти на веб-сайт, а затем автоматически войти в систему при следующем посещении сайта (даже если вы тем временем закрыли браузер).

2. Два решения «Запомнить меня»

Spring предоставляет две немного разные реализации для решения проблемы. Оба используют UsernamePasswordAuthenticationFilter , используя ловушки для вызова реализации RememberMeServices .

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

1. Введение

Во-первых, давайте рассмотрим некоторые основные теории.

Проще говоря, число является простым, если оно делится только на единицу и на само число. Непростые числа называются составными числами. И число один не является ни простым, ни составным.

В этой статье мы рассмотрим различные способы проверки простоты числа в Java.

2. Пользовательская реализация

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

1. Весна и Ява

>> Эксперименты с событиями зеркалирования JFR [ inside.java ]

Подробное описание того, как использовать зеркальные события JFR для мониторинга сетевых действий в JDK !

>> Wiremock для RSocket [ spring.io ]

Надежные тесты для RSocket — как использовать реальный сервер при общении с сервером RSocket в тестах.

>> Простой способ визуализации данных с помощью Panache [ antoniogoncalves.org ]

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

1. Обзор

В этом руководстве мы сосредоточимся на том, как мы можем добавить локальные файлы JAR в наши зависимости Gradle .

2. Локальные JAR-файлы

Прежде чем мы начнем объяснять процесс добавления локальных файлов JAR в Gradle, стоит упомянуть, что не рекомендуется вручную добавлять зависимости, доступные в общедоступных репозиториях. Одна из наиболее важных причин, по которой существуют такие системы сборки, как Gradle, заключается в том, что они делают такие вещи автоматически. До Gradle мы загружали файл JAR и помещали его в папку libs . Теперь Gradle автоматически обрабатывает эти вещи за нас.

Однако этот процесс по-прежнему поддерживается Gradle для специальных целей, таких как пользовательские файлы JAR.

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

1. Обзор

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

В этом уроке мы рассмотрим некоторые способы, с помощью которых мы можем преобразовать наш Mono коллекции в Flux элементов коллекции .

2. Описание проблемы

При работе с Reactive Streams мы используем Publisher и две его реализации, Flux и Mono . Хотя Mono<T> — это тип Publisher<T> , который может выдавать 0 или 1 элемент типа T , Flux<T> может выдавать от 0 до N элементов типа T .

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

1. Обзор

Обычно при работе с HTTP-вызовами в наших веб-приложениях нам нужен способ сбора каких-либо показателей о запросах и ответах. Обычно это делается для отслеживания размера и частоты HTTP-вызовов, которые делает наше приложение.

OkHttp — это эффективный клиент HTTP и HTTP/2 для приложений Android и Java. В предыдущем уроке мы рассмотрели основы работы с OkHttp.

В этом руководстве мы узнаем все о том, как мы можем собирать эти типы метрик с помощью событий.

2. События

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

1. Обзор

В традиционном веб-приложении для входа в систему обычно требуется отправить имя пользователя и пароль на сервер для аутентификации. Хотя эти элементы теоретически могут быть параметрами URL в GET-запросе, очевидно, что гораздо лучше инкапсулировать их в POST-запрос.

Однако должен ли выход из системы быть доступен через запрос GET, поскольку он не требует отправки какой-либо конфиденциальной информации?

В этом уроке мы рассмотрим различные аспекты этого дизайна.

2. Сеансы на стороне сервера

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

1. Обзор

В этом руководстве мы обсудим, как реализовать глобальный обработчик ошибок для Spring REST API.

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

2. Пользовательское сообщение об ошибке

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

1. Обзор

Spring Retry предоставляет возможность автоматического повторного вызова неудачной операции. Это полезно, когда ошибки могут быть временными (например, мгновенный сбой сети).

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

2. Зависимости Maven

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

1. Обзор

В Java 9 появился долгожданный синтаксический сахар для создания небольших неизменяемых экземпляров Collection с использованием лаконичного однострочного кода. Согласно JEP 269 , в JDK 9 будут включены новые удобные фабричные методы.

В этой статье мы рассмотрим его использование вместе с деталями реализации.

2. История и мотивация

Создание небольшой неизменяемой коллекции в Java традиционным способом очень многословно.