Skip to main content

Overview

ActiveJ Serializer is the fastest Java serializer in the world. At the same time, it is extremely powerful and features full support of Java subclasses, collections (including Maps), and also specialized collections like HPPC. ActiveJ Serializer is one of the ActiveJ technologies, but it has minimal third-party dependencies and can be used as a stand-alone component.

Why ActiveJ Serializer?#

  • Works directly with Java classes via annotations. No additional layers of intermediate DTO classes.
  • Implemented using runtime bytecode generation to be compatible with dynamically created classes.
  • Stable binary format with backward binary compatibility.
  • Support of the scheme evolution: changeable versions, added or removed fields, etc.
  • Can be easily extended - you can write your own plugins for specific classes.
  • Includes special hints for even more efficient code: String formats, nullable, varlen, etc.
  • Provides little endian format for JVM intrinsics.
  • Support of unsafe mode for the best performance.
  • Cyclic references of any complexity.
  • UTF-8, UTF-16 and ISO8859-1 encoding.
  • Compatible even with complex collections, generics and nullable values.

Convenient and powerful#

ActiveJ Serializer is a ground-breaking bytecode generator of fast and space-efficient serializers. It is incredibly powerful and works even with complicated objects utilizing a simple and intuitive DSL

public static class Person {    public Person(@Deserialize("age") int age,                  @Deserialize("name") String name) {        this.age = age;        this.name = name;    }
    @Serialize(order = 0)    public int age;
    @Serialize(order = 1)    public final String name;}

Add ActiveJ Serializer to your project#

You can add ActiveJ Serializer to your project by importing its Maven repository. These docs cover the most recent release of ActiveJ Serializer v5.0-beta2 (see on Github or Maven).