使用Avro.tools实现将AVSC文件转化成java类
项目中我们时常会遇到想将avsc文件直接转换为java类进行开发,那么今天阿贵就推荐一下如何使用 avro.tools将avsc文件转换成java类的方法!
首先你下载一款序列化转换工具,这是链接:
转换工具下载点击即可跳转
2:我们要下载的是1.7.7.jar的版本:
3:然后我们将下载好的jar包和avsc文件一起放在同一个目录。最好放在除了系统盘以外的自定义文件中:
avsc文件就像这样子,一般是客户给你或者是你自己定义的,用来序列化,一般和通讯项目有关的才会用到,比如说activemq实现订阅发送有关项目:
[
{
"name": "PacketLostDelay",
"namespace": "com.thalessaic.imss.avro.dcs",
"type": "record",
"fields": [
{
"name": "timestamp",
"type": {
"type": "long",
"logicalType": "timestamp-millis"
}
},
{
"name": "lostPercent",
"type": ["null","double"]
},
{
"name": "delayMillSeconds",
"type": ["null","int"]
}
]
4:随后将两个文件放在一起,如图:
5:随后我们在目录上打开当前目录的CMD.进入命令行:
6:进入命令行输入如下指令:
java -jar D:\java\avro-tools-1.7.7.jar compile schema . D:\java\dce.avsc .
6.1:这里我要解释一下,cmd中的指令代表的含义,java -jar:指的是java执行jar包的命令,后面的avro…1.7.7.jar指的是你刚才下载的jar包,后面的compile schema是转换命令,后面的路径指的是你的avsc文件的路径:
6.3:执行完毕以后直接回车,等待几秒钟,你就可以看到当前文件夹中出现一个数据包,就是转化过的java类,直接可以放在程序中去用了!!!
+++++++++++++++++++一起加油,一起成长+++++++++++++++++++++++++++