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

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

1. Введение

В этом руководстве мы сосредоточимся на аспекте производительности Java String API .

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

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

2. Создание новой строки

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

1. Весна и Ява

>> Нативная Java в реальном мире [ infoq.com ]

Микросервисы в Kubernetes, лучшее место для Native Java — подробное руководство по сборке, тестированию и отладке с помощью Native Java.

>> Как использовать переключатель в современной Java [ nipafx.dev ]

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

>> Kubernetes Native Java с Quarkus [ infoq.com ]

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

1. Введение

В этом руководстве мы рассмотрим базовую настройку подключения клиента Spring Boot к брокеру Apache Kafka с использованием аутентификации SSL.

Secure Sockets Layer (SSL) фактически устарел и был заменен Transport Layer Security (TLS) с 2015 года. Однако по историческим причинам Kafka (и Java) по-прежнему ссылаются на «SSL», и мы будем следовать этому соглашению в этой статье. также.

2. Обзор SSL

По умолчанию Apache Kafka отправляет все данные в виде открытого текста и без какой-либо аутентификации.

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

1. Обзор

Хеширование является фундаментальной концепцией информатики.

В Java эффективные алгоритмы хеширования стоят за некоторыми из самых популярных коллекций, таких как HashMap (ознакомьтесь с этой подробной статьей ) и HashSet .

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

2. Использование hashCode() в структурах данных

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

1. Весна и Ява

>> Функциональные тесты с тестовыми контейнерами [ engineering.zalando.com ]

Сквозные функциональные тесты с Testcontainers — начиная с концепции и заканчивая практическими примерами.

>> Есть ли наконец у Java 18 лучшая альтернатива JNI? [ разработчик.okta.com ]

Введение в результаты Project Panama и проблемы, которые он решает : доступ к внешней памяти, компоновщик и так далее. Интересное, перспективное чтение.

>> Улучшено сопоставление OffsetDateTime и ZonedDateTime в Hibernate 6 [ thorben-janssen.com ]

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

1. Обзор

Javadoc — отличный способ создания современной документации Java в формате HTML из исходного кода Java.

В этом руководстве мы сосредоточимся на тегах @see и @link в комментариях к документам.

2. @см .

Формат тега @see довольно прост:

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

1. Обзор

В этом руководстве мы узнаем, как bean-компоненты Spring, созданные с помощью области singleton , работают за кулисами для обслуживания нескольких одновременных запросов. Кроме того, мы поймем, как Java хранит экземпляры bean-компонентов в памяти и как обрабатывает одновременный доступ к ним.

2. Spring Beans и память кучи Java

Куча Java , как мы знаем, представляет собой глобально разделяемую память, доступную для всех запущенных потоков внутри приложения. Когда контейнер Spring создает компонент с областью действия singleton, компонент сохраняется в куче. Таким образом, все параллельные потоки могут указывать на один и тот же экземпляр компонента.

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

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

1. Обзор

В этом руководстве мы покажем, как включить ведение журнала в HttpClient Apache . Кроме того, мы объясним, как ведение журнала реализовано внутри библиотеки. После этого мы покажем, как включить различные уровни ведения журнала.

2. Реализация ведения журнала

Библиотека HttpClient предоставляет эффективную, актуальную и многофункциональную реализацию клиентского сайта протокола HTTP.

Действительно, как библиотека, HttpClient не требует обязательной реализации ведения журнала . С этой целью версия 4.5 предоставляет журналы с помощью Commons Logging . Точно так же последняя версия 5.1 использует фасад ведения журнала, предоставленный SLF4J . Обе версии используют схему иерархии для сопоставления регистраторов с их конфигурациями.

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

1. Обзор

В этой статье мы покажем, как расширить URL-адреса с помощью HttpClient .

Простой пример: исходный URL-адрес был сокращен один раз — такой службой, как bit.ly.

Более сложный пример: URL-адрес был сокращен несколько раз разными службами, и требуется несколько проходов, чтобы получить исходный полный URL-адрес.

Если вы хотите копнуть глубже и узнать о других интересных вещах, которые можно делать с помощью HttpClient, — перейдите к основному руководству по HttpClient .

2. Разверните URL один раз

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

1. Введение

Apache HttpClient — это низкоуровневая облегченная клиентская HTTP-библиотека для связи с HTTP-серверами. В этом руководстве мы узнаем, как настроить поддерживаемые версии безопасности транспортного уровня (TLS) при использовании HttpClient . Мы начнем с обзора того, как работает согласование версии TLS между клиентом и сервером. После этого мы рассмотрим три различных способа настройки поддерживаемых версий TLS при использовании HttpClient .

2. Согласование версии TLS

TLS — это интернет-протокол, обеспечивающий безопасную и надежную связь между двумя сторонами. Он инкапсулирует протоколы прикладного уровня, такие как HTTP. Протокол TLS несколько раз пересматривался с момента его первой публикации в 1999 году. Поэтому важно, чтобы клиент и сервер сначала договорились о том, какую версию TLS они будут использовать при установлении нового соединения. Версия TLS согласовывается после обмена приветственными сообщениями между клиентом и сервером:

  1. Клиент отправляет список поддерживаемых версий TLS.
  2. Сервер выбирает один и включает выбранную версию в ответ.
  3. Клиент и сервер продолжают настройку соединения, используя выбранную версию.