Files
my-blog-posts/byte-mapper/index.md
2026-02-17 18:36:46 +03:00

1.2 KiB
Raw Blame History

byte-mapper

Удобный сериализатор и десериализатор Java объектов в виде компактного массива байт. Берет лучшее из нескольких технологий:

  • Компактность, схожая с ProtoBuf;
  • Синтаксическое удобство, как у JPA;
  • Простота использования, как у Jackson ObjectMapper;

GitHub

Пример

@ByteEntity(1)
public class User {

    @ByteProperty(1)
    private int id;

    @ByteProperty(2)
    private String firstName;

    @ByteProperty(3)
    private short age;

    @ByteProperty(4)
    private Address address;

    @ByteProperty(5)
    private Contact[] contacts;
    
    // Getters and Setters...
}
// Create Byte Mapper Context
ByteMapperContext context = new ByteMapperContext();
mapper = context.getByteMapper();

// Write User object to ByteBuffer
ByteBuffer exampleBuffer = ByteBuffer.allocate(1024);
mapper.write(exampleBuffer, user);

buffer.flip();

// Read User object from ByteBuffer
user = mapper.read(exampleBuffer);