protobuf
syntax = "proto2";
message Person {
required string name = 1;
optional int32 age = 2;
repeated string hobbies = 3;
}
protoc --java_out=<output_directory> <proto_file>
Person person = Person.newBuilder()
.setName("Alice")
.setAge(25)
.addHobbies("reading")
.addHobbies("hiking")
.build();
// Serialize
byte[] serializedPerson = person.toByteArray();
// Deserialize
Person deserializedPerson = Person.parseFrom(serializedPerson);
System.out.println(deserializedPerson);