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

1310 записей с тегом "Java"

Посмотреть все теги

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

1. Обзор

В этом руководстве мы узнаем о новом параметре командной строки Java 9 –release. Компилятор Java, работающий с параметром –release N , автоматически генерирует файлы классов, совместимые с версией Java N. Мы обсудим, как этот параметр связан с существующими параметрами командной строки компилятора -source и -target.

2. Необходимость — вариант выпуска

Чтобы понять необходимость опции — Release , давайте рассмотрим сценарий, в котором нам нужно скомпилировать наш код с помощью Java 8 и мы хотим, чтобы скомпилированные классы были совместимы с Java 7.

До Java 9 этого можно было добиться с помощью параметров — source и — target , где

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

1. Обзор

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

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

2. Уязвимости десериализации

Java широко использует десериализацию для создания объектов из входных источников.

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

1. Введение

В этом руководстве мы кратко рассмотрим интерфейс Java java.io.Externalizable . Основная цель этого интерфейса — упростить пользовательскую сериализацию и десериализацию.

Прежде чем мы продолжим, обязательно ознакомьтесь со статьей о сериализации в Java . Следующая глава посвящена сериализации объекта Java с помощью этого интерфейса.

После этого мы собираемся обсудить ключевые отличия от интерфейса java.io.Serializable .

2. Внешний интерфейс

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

1. Обзор

UUID (универсальный уникальный идентификатор), также известный как GUID (глобальный уникальный идентификатор), представляет собой 128-битное значение, уникальное для всех практических целей. Их уникальность не зависит от центрального регистрационного органа или координации между генерирующими их сторонами , в отличие от большинства других схем нумерации.

В этом руководстве мы увидим два разных подхода к реализации для создания идентификаторов UUID в Java.

2. Структура

Давайте посмотрим на пример UUID, за которым следует каноническое представление UUID:

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

1. Введение

В Java мы обычно пишем собственные методы для обработки преобразований между байтами и шестнадцатеричными строками. Однако в Java 17 представлен java.util.HexFormat , служебный класс, который позволяет преобразовывать примитивные типы, массивы байтов или массивы символов в шестнадцатеричную строку и наоборот .

В этом руководстве мы рассмотрим, как использовать HexFormat и продемонстрируем предоставляемые им функции.

2. Работа с шестнадцатеричными строками до Java 17

Шестнадцатеричная система счисления использует основание 16 для представления чисел. Это означает, что он состоит из 16 символов, обычно это символы 0-9 для значений от 0 до 9 и AF для значений от 10 до 15.

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

1. Обзор

Атрибут serialVersionUID — это идентификатор, который используется для сериализации/десериализации объекта класса Serializable .

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

2. UID серийной версии

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

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

1. Обзор

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

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

2. Преобразование с помощью обычной Java

Давайте начнем с простого примера использования Java для преобразования — с использованием промежуточного массива байтов :

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

1. Введение

RSA, или, другими словами, Ривест-Шамир-Адлеман , представляет собой асимметричный криптографический алгоритм. Он отличается от симметричных алгоритмов, таких как DES или AES , наличием двух ключей. Открытый ключ, которым мы можем поделиться с кем угодно, используется для шифрования данных. И частный, который мы храним только для себя и он используется для расшифровки данных.

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

2. Создайте пару ключей RSA

Прежде чем мы начнем фактическое шифрование, нам нужно сгенерировать нашу пару ключей RSA. Мы можем легко сделать это, используя KeyPairGenerator из пакета java.security :

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

1. Обзор

В этом руководстве мы рассмотрим различные утилиты, обеспечивающие функции кодирования и декодирования Base64 в Java.

В основном мы собираемся проиллюстрировать новые API Java 8. Кроме того, мы используем служебные API-интерфейсы Apache Commons.

2. Java 8 для базы 64

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

1. Обзор

В этом уроке мы продемонстрируем классы BigDecimal и BigInteger .

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

2. Большой десятичный

BigDecimal представляет неизменяемое десятичное число произвольной точности со знаком . Он состоит из двух частей: