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

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

1. Введение

В предыдущей статье мы объяснили разницу между образами Docker и контейнерами Docker. Вкратце: изображение похоже на класс Java, а контейнеры — на объекты Java.

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

2. Зачем удалять образы Docker?

Docker Engine хранит образы и запускает контейнеры. Для этой цели Docker Engine резервирует определенный объем дискового пространства в качестве «пула хранения» для образов, контейнеров и всего остального (например, глобальных томов или сетей Docker).

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

1. Введение

В этой статье основное внимание будет уделено изучению Spring BeanFactory API .

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

2. Основы — бобы и контейнеры

Проще говоря, bean-компоненты — это объекты Java, которые составляют основу приложения Spring и управляются контейнером Spring IoC. Помимо управления контейнером, в bean-компоненте нет ничего особенного (во всех остальных отношениях это один из многих объектов в приложении).

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

1. Обзор

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

В этом руководстве мы увидим, как установить и использовать свойство max-http-header-size для заголовков запросов в файле application.properties в приложении Spring Boot 2.x.

2. Максимальный размер HTTP-заголовка

Spring Boot поддерживает Tomcat , Undertow и Jetty в качестве встроенных серверов. Как правило, мы записываем конфигурации сервера в файл application.properties или файл application.yaml в приложении Spring Boot.

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

1. Введение

В этой статье мы объясним, как Spring WebFlux взаимодействует с аннотацией @Cacheable . Во-первых, мы рассмотрим некоторые распространенные проблемы и способы их избежать. Далее мы рассмотрим доступные обходные пути. Наконец, как всегда, мы приведем примеры кода.

2. @Cacheable и реактивные типы

Эта тема еще относительно новая. На момент написания этой статьи не было полной интеграции между @Cacheable и реактивными фреймворками. Основная проблема заключается в отсутствии неблокирующих реализаций кеша (API кеша JSR-107 блокирует). Только Redis предоставляет реактивный драйвер.

Несмотря на проблему, о которой мы упоминали в предыдущем абзаце, мы по-прежнему можем использовать @Cacheable в наших методах обслуживания. Это приведет к кэшированию наших объектов-оболочек ( Mono или Flux ), но не кеширует фактический результат нашего метода.

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

1. Введение

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

2. Пример

Во-первых, мы начнем с определения строки примера, которую мы будем использовать во всех решениях:

String example = "Katie";

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

1. Введение

Помимо Java, на виртуальной машине Java могут работать и другие языки, такие как Scala, Kotlin, Groovy, Clojure.

В следующих разделах мы подробно рассмотрим наиболее популярные языки JVM.

Начнем, конечно же, с предшественника языков JVM — Java.

2. Ява

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

1. Обзор

Современные приложения не живут изолированно: обычно нам нужно подключаться к различным внешним компонентам, таким как PostgreSQL, Apache Kafka, Cassandra, Redis и другим внешним API.

В этом руководстве мы увидим, как Spring Framework 5.2.5 облегчает тестирование таких приложений с введением динамических свойств .

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

2. Проблема: динамические свойства

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

1. Обзор

Каждое приложение возвращает код выхода при выходе; этот код может быть любым целым числом, включая отрицательные значения.

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

2. Весенняя загрузка и коды выхода

Приложение Spring Boot завершится с кодом 1 , если при запуске возникнет исключение. В противном случае при чистом выходе он предоставляет 0 в качестве кода выхода.

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

1. Обзор

WebSocket обеспечивает управляемое событиями, двунаправленное и полнодуплексное соединение между клиентом и сервером. Связь через WebSocket включает рукопожатие, обмен сообщениями (отправку и получение сообщений) и закрытие соединения.

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

2. Создание веб-сокета

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

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

1. Обзор

В этом руководстве мы покажем, как добавить столбец на лист в файле Excel с помощью Apache POI.

2. Апач POI

Для начала нам сначала нужно добавить зависимость poi-ooxml в файл pom.xml нашего проекта :

<dependency>
<groupId>org.apache.poi</groupId>
  <artifactId>poi-ooxml</artifactId>
  <version>5.0.0</version>
</dependency>