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

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

1. Обзор

В этом кратком руководстве мы подробно рассмотрим, как внедрить карту из файла YAML в Spring Boot .

Во-первых, мы начнем с небольшого понимания файлов YAML в Spring Framework. Затем мы продемонстрируем на практическом примере, как связать свойства YAML с Map .

2. Файлы YAML в Spring Framework

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

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

1. Обзор

В этом руководстве мы обсудим, как реализовать SSO — единый вход — с использованием Spring Security OAuth и Spring Boot.

Мы будем использовать три отдельных приложения:

  • Сервер авторизации — центральный механизм аутентификации.
  • Два клиентских приложения: приложения, использующие SSO

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

И мы собираемся использовать тип предоставления кода авторизации из OAuth2 для делегирования аутентификации.

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

1. Обзор

Профилировщики выборки Java обычно разрабатываются с использованием интерфейса инструментов JVM (JVMTI) и собирают трассировки стека в безопасной точке. Следовательно, эти профилировщики выборки могут страдать от проблемы смещения точки безопасности .

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

В этом руководстве мы рассмотрим async-profiler вместе с различными методами профилирования, которые он предлагает.

2. асинхронный профилировщик

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

1. Обзор

В этой статье мы сравним BitSet и boolean[] с точки зрения производительности в разных сценариях.

Обычно мы очень широко используем термин производительность, имея в виду разные значения. Поэтому начнем с рассмотрения различных определений термина «производительность».

Затем мы собираемся использовать две разные метрики производительности для тестов: объем памяти и пропускная способность. Чтобы оценить пропускную способность, мы сравним несколько распространенных операций с битовыми векторами.

2. Определение производительности

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

1. Введение

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

В этом уроке мы рассмотрим хуки @Before , @BeforeStep, @AfterStep и @After Cucumber.

2. Обзор хуков в Cucumber

2.1. Когда следует использовать хуки?

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

1. Обзор

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

Сначала мы поговорим о том, как работает адаптивный размер, а затем оценим разницу между максимальным, используемым и зафиксированным размерами.

2. Максимальный размер и адаптивный размер

Два значения управляют размером кучи JVM : одно начальное значение, указанное с помощью флага -Xms, и другое максимальное значение, управляемое флагом настройки -Xmx .

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

1. Введение

Java предоставляет значительное количество методов и классов, предназначенных для объединения строк.

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

2. Построитель строк

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

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

1. Обзор

Keycloak — это сторонний сервер авторизации, который управляет пользователями наших веб-приложений или мобильных приложений.

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

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

Сначала мы увидим это для автономного сервера Keycloak, а затем для встроенного .

2. Автономный сервер

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

1. Обзор

В этом кратком учебном пособии описывается тег <Optional> Maven и то, как мы можем использовать его для уменьшения размера и объема артефакта проекта Maven, такого как WAR, EAR или JAR.

Чтобы освежить в памяти Maven, ознакомьтесь с нашим подробным руководством .

2. Что такое <необязательный> ?

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

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

1. Обзор

В этом кратком руководстве мы увидим, как запустить команду mvn из любого каталога за пределами pom.xml .

2. mvn из другого каталога

Если мы запустим любую подкоманду mvn из каталога, не содержащего файла pom.xml , команда завершится ошибкой:

$ mvn clean compile
The goal you specified requires a project to execute but there is no POM in this directory.
Please verify you invoked Maven from the correct directory