public class User {
private int id;
private String name;
public User(int id, String name) {
this.id = id;
this.name = name;
}
@Override
public String toString() {
return "User [id=" + id + ", name=" + name + "]";
}
}
public class SerializationExample {
public static void main(String[] args) throws IOException {
User user = new User(1, "John Doe");
Schema<User> schema = RuntimeSchema.getSchema(User.class);
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
ProtostuffIOUtil.writeTo(byteArrayOutputStream, user, schema, LinkedBuffer.allocate());
byte[] byteArray = byteArrayOutputStream.toByteArray();
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(byteArray);
User user2 = new User(0, "");
ProtostuffIOUtil.mergeFrom(byteArrayInputStream, user2, schema);
System.out.println(user2);
}
}