zoukankan      html  css  js  c++  java
  • Avro序列化与反序列化

    4、Avro实现序列化的步骤

    1、创建maven工程,引入pom文件(定义属性和依赖信息,以及定义Avro插件)

    2、根据Avro插件的要求,更改maven工程结构,需要创建一个source/main/avro源目录

    3、根据avroschema(模式)要求,创建模式文件(放在新建的源目录中),写好之后

    4、执行 run-->maven generator sources命令,通过avro插件生成模式文件对应的java

    5、将数据封装到java类中,然后通过avroAPI进行序列化和反序列化操作

    1)设置属性值的方法:1)通过java平常的API  2)借助newBuilder()build()方法:new Student().newBuilder(stu1).setAge(21).build();

    2)创建schema文件产生的要序列化的对象stu,并赋值

    3)创建DatumWriter<>对象,DatumWriter dw = new SpecificDatumWriter<>();

    4)创建DataFileWriter<>对象,DataFileWriter<> dfw = new DataFIleWriter<>(df);

    5)创建序列化通道 dfw.create(schema,file);schema:被序列化对象的对应模式

    File:将序列化对象写入到哪一个文件中

    6)将对象序列化到指定的文件中

    dfw.append(stu)

    反序列化:

    1)创建DatumReader<>对象,DatumReader dr= new SpecificDatumReader<>();

    2)创建DataFileReader<>对象,DataFileReader<> dfr= new DataFIleReader<>(new File(“1.txt”)dr);

    3)判断是否还有需要反序列化的内容

    Whiledfr.hasNext( ) ){ dfr.next()}

  • 相关阅读:
    kali-linux镜像下载
    清除数据库所有表
    家庭医生项目进展
    2020年度发展规划的要点
    Sql Server数据类型
    window server2012R2激活
    C#介绍
    WebApi自动接口文档Swagger汉化和添加Token验证
    SQL Server 数据库内部版本号
    用户定义表类型
  • 原文地址:https://www.cnblogs.com/sxpy-lj/p/7482357.html
Copyright © 2011-2022 走看看