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

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

1. Обзор

В этом кратком руководстве мы покажем, как мы можем получить ошибку Cannot reference «X» до вызова конструктора супертипа и как ее избежать.

2. Цепочка конструкторов

Конструктор может вызвать ровно один другой конструктор. Этот вызов должен находиться в первой строке его тела.

Мы можем вызвать конструктор того же класса с помощью ключевого слова this или мы можем вызвать конструктор суперкласса с помощью ключевого слова super .

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

1. Обзор

Обычно удобно объединять множество файлов классов Java в один архивный файл.

В этом руководстве мы рассмотрим все тонкости работы с файлами jar — или J ava AR chive — в Java.

В частности, мы возьмем простое приложение и рассмотрим различные способы его упаковки и запуска в виде jar-файла. Мы также ответим на некоторые любопытные вопросы, например , как легко прочитать файл манифеста jar .

2. Настройка Java-программы

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

1. Обзор

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

Как обычно, мы также приведем простой пример кода.

2. Паттерн посредника

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

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

1. Обзор

В этом кратком руководстве мы рассмотрим паттерн Null Object, частный случай паттерна стратегии . Мы опишем его цель и когда мы действительно должны рассмотреть его использование.

Как обычно, мы также приведем простой пример кода.

2. Шаблон нулевого объекта

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

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

1. Обзор

Вы когда-нибудь задумывались, почему Java-приложения потребляют гораздо больше памяти, чем указано в хорошо известных флагах настройки -Xms и -Xmx ? По ряду причин и возможных оптимизаций JVM может выделять дополнительную собственную память. Эти дополнительные выделения могут в конечном итоге увеличить потребляемую память сверх ограничения -Xmx .

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

2. Нативные распределения

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

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

1. Введение

В этом руководстве мы рассмотрим OData — стандартный протокол, обеспечивающий простой доступ к наборам данных с помощью RESTFul API.

2. Что такое OData ?

OData — это стандарт OASIS и ISO/IEC для доступа к данным с использованием RESTful API. Таким образом, он позволяет потребителю находить наборы данных и перемещаться по ним с помощью стандартных вызовов HTTP.

Например, мы можем получить доступ к одному из общедоступных сервисов OData с помощью простого однострочника curl :

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

1. Введение

Это руководство является продолжением нашего руководства по протоколу OData , в котором мы рассмотрели основы протокола OData .

Теперь мы посмотрим, как реализовать простую службу OData с помощью библиотеки Apache Olingo .

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

2. Что такое олинго?

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

1. Обзор

Начиная с Spring Boot 1.3, мы можем использовать EnvironmentPostProcessor для настройки среды приложения до обновления контекста приложения .

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

2. Весенняя среда

Абстракция Environment в Spring представляет среду, в которой работает текущее приложение. В то же время он имеет тенденцию к унификации способов доступа к свойствам в различных источниках свойств, таких как файлы свойств, системные свойства JVM, системные переменные среды и параметры контекста сервлета.

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

1. Введение

Spring Cloud Data Flow — это набор инструментов для построения конвейеров интеграции и обработки данных в реальном времени.

Конвейеры в данном случае — это приложения Spring Boot, созданные с использованием фреймворков Spring Cloud Stream или Spring Cloud Task .

В этом руководстве мы покажем, как использовать Spring Cloud Data Flow с Apache Spark .

2. Локальный сервер потока данных

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

1. Введение

Spring Data JPA позволяет нам определять производные методы , которые читают, обновляют или удаляют записи из базы данных. Это очень полезно, поскольку сокращает шаблонный код уровня доступа к данным.

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

2. Производные методы deleteBy

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