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

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

1. Обзор

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

2. Преобразование десятичных (с основанием 10) целых строк

Чтобы преобразовать десятичную строку в BigInteger , мы будем использовать конструктор BigInteger(String value) :

String inputString = "878";
BigInteger result = new BigInteger(inputString);
assertEquals("878", result.toString());

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

1. Обзор

JVM интерпретирует и выполняет байт -код во время выполнения. Кроме того, он использует JIT-компиляцию для повышения производительности.

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

В этом руководстве мы рассмотрим JIT-компиляторы клиента и сервера. Мы рассмотрим многоуровневую компиляцию и ее пять уровней компиляции. Наконец, мы увидим, как работает компиляция методов, отслеживая журналы компиляции.

2. JIT-компиляторы

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

RxJava — это реализация Reactive Extensions для среды Java.

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

./cb58e6b0884709341fec0565308cec3f.png

Основы RxJava

./e2c8ef7893b50cfc57c6adcb2ab5a8a5.png

Расширенный RxJava

./0ff7f81552409cd496925bf477eed866.png

Интеграция RxJava с другими библиотеками

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

./a24f166de8204c49751f0d5ba0a27f43.png

Начало работы с Spring WebFlux

./3b72c1442c81b2c86a34df43bb5f6df5.png

Весенний веб-клиент

./6fa0ab2c3dc26978c581de4eb8ecd389.png

Spring Security в реактивных приложениях

./fd89552b8aa557fbc165544bba3d17db.png

Отладка реактивных приложений

./dd84627e865cf4d421c8f1f998fd817f.png

Расширенные руководства по Spring Reactive

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

Vavr — это функциональная библиотека для Java 8+, предоставляющая неизменяемые типы данных и функциональные управляющие структуры.

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

Итак, давайте прыгнем в него.

./eed00380b1414e5bd3307ff966557fb2.png

Основы Вавр

./c22f90a87522824e19e5fae2bc4fc152.png

Вавр Продвинутый

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

1. Обзор

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

2. Настройка

Для целей этой статьи давайте воспользуемся приведенным ниже файлом docker-compose.yml для настройки двухузлового кластера Kafka : ``

$ cat docker-compose.yml
---
version: '2'
services:
zookeeper-1:
image: confluentinc/cp-zookeeper:latest
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
ports:
- 2181:2181

kafka-1:
image: confluentinc/cp-kafka:latest
depends_on:
- zookeeper-1
ports:
- 29092:29092
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-1:9092,PLAINTEXT_HOST://localhost:29092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
kafka-2:
image: confluentinc/cp-kafka:latest
depends_on:
- zookeeper-1
ports:
- 39092:39092
environment:
KAFKA_BROKER_ID: 2
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-2:9092,PLAINTEXT_HOST://localhost:39092
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

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

1. Обзор

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

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

2. Что такое тип пустоты

Начиная с JDK 1.1, Java предоставляет нам тип Void . Его цель — просто представить возвращаемый тип void как класс и содержать общедоступное значение Class<Void> . Его нельзя создать, поскольку его единственный конструктор является закрытым.

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

1. Обзор

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

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

Мы рассмотрим базовую конфигурацию, внешний интерфейс, быструю обработку данных и обработку исключений.

2. Настройка

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

1. Обзор

Oracle выпустила Java 11 в сентябре 2018 года, всего через 6 месяцев после предшественницы, версии 10.

Java 11 — это первый выпуск с долгосрочной поддержкой (LTS) после Java 8. Oracle также прекратила поддержку Java 8 в январе 2019 года. Как следствие, многие из нас перейдут на Java 11.

В этом руководстве мы рассмотрим варианты выбора JDK для Java 11. Затем мы рассмотрим новые функции, удаленные функции и улучшения производительности, представленные в Java 11.

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

1. Обзор

Коллекции в Java основаны на паре основных интерфейсов и более чем дюжине классов реализации. Широкий выбор различных реализаций иногда может привести к путанице.

Принятие решения о том, какой тип коллекции использовать для конкретного варианта использования, — нетривиальная задача. Это решение может сильно повлиять на читаемость и производительность нашего кода.

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

2. Коллекции