<dependencies> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>${jackson.version}</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.dataformat</groupId> <artifactId>jackson-dataformat-avro</artifactId> <version>${jackson.avro.version}</version> </dependency> </dependencies> json { "type": "record", "name": "Person", "fields": [ {"name": "name", "type": "string"}, {"name": "age", "type": "int"}, {"name": "address", "type": "string"} ] } public class Person { private String name; private int age; private String address; } public class AvroSerializationExample { public static void main(String[] args) throws IOException { Person person = new Person("John", 30, "123 Main St"); ObjectMapper objectMapper = new ObjectMapper(new AvroFactory()); objectMapper.registerModule(new AvroModule()); byte[] avroBytes = objectMapper.writeValueAsBytes(person); System.out.println(Arrays.toString(avroBytes)); } } public class AvroDeserializationExample { public static void main(String[] args) throws IOException { byte[] avroBytes = new byte[] {...}; ObjectMapper objectMapper = new ObjectMapper(new AvroFactory()); objectMapper.registerModule(new AvroModule()); Person person = objectMapper.readValue(avroBytes, Person.class); System.out.println("Name: " + person.getName()); System.out.println("Age: " + person.getAge()); System.out.println("Address: " + person.getAddress()); } }


上一篇:
下一篇:
切换中文