使用avro序列化和反序列化

该博客介绍了如何在Java项目中使用Avro进行数据序列化和反序列化。首先,通过mvn引入必要的Avro库,然后创建person.avsc的定义文件,接着利用avro-tools或avro-maven-plugin生成对应的Java模型类。在main sample中,博主提供了具体的序列化和反序列化的示例代码,帮助读者理解Avro的使用方法。

mvn 引入需要的jar包

        
        <dependency>
		  <groupId>org.apache.avro</groupId>
		  <artifactId>avro</artifactId>
		  <version>1.11.1</version>
		</dependency>
		<dependency>
		    <groupId>org.xerial.snappy</groupId>
		    <artifactId>snappy-java</artifactId>
		    <version>1.1.8.4</version>
		</dependency>

 编辑对应的定义

person.avsc

{
    "namespace":"org.cloud.avro",
    "type":"record",
    "name":"Person",
    "fields":[
        {"name":"id","type":"string"},
        {"name":"name","type":"string"},
        {"name":"age","type":["int","null"]}
    ]
}

生成对应的model

1. 借助 avro-tools 生成

2. 借助 avro-maven-plugin 执行 mvn clean isntall 生成

<plugin>
  <groupId>org.apache.avro</groupId>
  <artifactId>avro-m
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值