1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/eric_ds-fse

Клонировать/Скачать
README.md 3.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 05:58 658dc17

Fse

Введение

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

Приглашаем присоединиться к группе технического общения 186233599 для обсуждения и обмена опытом, а также подписаться на публичный аккаунт автора: «Ветер и огонь говорят».

Тестирование производительности

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

Инструкция по использованию

Сначала добавьте зависимость в файл Pom, как показано ниже:

<dependency>
    <groupId>com.jfirer</groupId>
    <artifactId>Fse</artifactId>
    <version>1.0</version>
</dependency>

Способ использования API:

Fse fse = new Fse();
TestData data = new TestData();
// Создаём контейнер двоичного массива для хранения результатов сериализации. Размер контейнера автоматически увеличивается при необходимости, начальный размер определяется входным параметром.
ByteArray buf = ByteArray.allocate(100);
// Выполняем сериализацию, сериализуем объект в двоичный массив.
fse.serialize(data, buf);
// Получаем результат сериализации в виде двоичного массива.
byte[] resultBytes = buf.toArray();
// Очищаем содержимое контейнера, можно использовать повторно.
buf.clear();
// Заполняем данными для последующей десериализации.
buf.put(resultBytes);
TestData result = (TestData) fse.deSerialize(buf);
assertTrue(result.equals(data));

Fse не является потокобезопасным. Для многопоточного использования необходимо создавать отдельные экземпляры для каждого потока.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/eric_ds-fse.git
git@api.gitlife.ru:oschina-mirror/eric_ds-fse.git
oschina-mirror
eric_ds-fse
eric_ds-fse
master