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

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

1. Обзор

При работе с регулярными выражениями в Java мы обычно хотим искать последовательность символов для данного Pattern . Чтобы облегчить это, API регулярных выражений Java предоставляет класс Matcher , который мы можем использовать для сопоставления заданного регулярного выражения с текстом.

Как правило, мы почти всегда хотим использовать один из двух популярных методов класса Matcher :

  • найти()
  • Спички()

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

2. Метод find ()

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

1. Введение

В этом руководстве мы собираемся узнать о каналах сокетов домена Unix .

Мы рассмотрим некоторые теоретические основы, плюсы и минусы и создадим простое клиент-серверное приложение Java, которое использует каналы сокетов домена Unix для обмена текстовыми сообщениями.

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

2. Каналы сокетов домена Unix

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

1. Обзор

Apache Cassandra — это мощная распределенная база данных NoSQL с открытым исходным кодом. В предыдущем уроке мы рассмотрели некоторые основы работы с Cassandra и Java .

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

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

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

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

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

1. Обзор

В этой статье мы узнаем, как HashMap внутренне управляет парами ключ-значение и как писать собственные реализации ключей.

2. Управление ключами

2.1. Внутренняя структура

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

1. Обзор

В этом руководстве мы рассмотрим, как работать с вложенными HashMaps в Java. Мы также увидим, как создавать и сравнивать их. Наконец, мы также увидим, как удалять и добавлять записи на внутренние карты.

2. Варианты использования

Вложенный HashMap очень полезен для хранения JSON или JSON-подобных структур, в которых объекты встроены друг в друга. Например, структура или JSON, похожие на:

{
"type": "donut",
"batters":
{
“batter”:
[
{ "id": "1001", "type": "Regular" },
{ "id": "1002", "type": "Chocolate" },
{ "id": "1003", "type": "Blueberry" },
{ "id": "1004", "type": "Devil's Food" }
]
}
}

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

1. Весна и Ява

>> Уточнение возвращаемого типа методов Java без нарушения обратной совместимости [ morling.dev ]

Познакомьтесь с методами Bridge — хорошая статья о том, как сохранить бинарную совместимость при изменении сигнатуры метода.

>> Прогресс GC от JDK 8 до JDK 17 [ kstefanj.github.io ]

Значительные улучшения GC в более новых версиях Java — обзор различных улучшений алгоритмов GC от JDK 8 до 17.

>> Выпущен Kotlin 1.6.0 [ blog.jetbrains.com ]

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

1. Обзор

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

Ознакомьтесь с нашими статьями о OkHttp, чтобы узнать больше о библиотеке.

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

Начнем с добавления зависимости OkHttp в наш файл pom.xml :

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

1. Обзор

Как правило, мы используем систему автоматической настройки Spring, такую как @SpringBootTest , для тестирования приложений Spring Boot. Но это приводит к большому количеству импорта автоматически настроенных компонентов.

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

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

Кроме того, мы рассмотрим небольшое приложение Spring Boot на основе Cassandra в действии.

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

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

1. Введение

Библиотека Джексона является стандартом де-факто в мире Java, когда речь идет об обработке JSON. Несмотря на четко определенные значения по умолчанию Джексона, для сопоставления логического значения с Integer нам по-прежнему необходимо выполнять ручную настройку.

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

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

2. Сериализация

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

В этом кратком руководстве мы рассмотрим преобразование из Reader в InputStream — сначала с помощью простой Java, затем с помощью Guava и, наконец, с библиотекой ввода-вывода Apache Commons.

Эта статья является частью серии «Java — Back to Basic» здесь, на ForEach.

1. С Java

Начнем с решения Java:

@Test
public void givenUsingPlainJava_whenConvertingReaderIntoInputStream_thenCorrect()
throws IOException {
Reader initialReader = new StringReader("With Java");

char[] charBuffer = new char[8 * 1024];
StringBuilder builder = new StringBuilder();
int numCharsRead;
while ((numCharsRead = initialReader.read(charBuffer, 0, charBuffer.length)) != -1) {
builder.append(charBuffer, 0, numCharsRead);
}
InputStream targetStream = new ByteArrayInputStream(
builder.toString().getBytes(StandardCharsets.UTF_8));

initialReader.close();
targetStream.close();
}

Обратите внимание, что мы одновременно читаем (и записываем) фрагменты данных.