pc8888888 发表于 2021-12-25 11:17

网络传输协议 xml、json、protobuf

xml、json、protobuf

xml:用于标记电子文件使其具有结构性的标记语言

json:是一种简单的消息格式

protobuf:由Google开发的二进制格式

xml解析

DOM解析:DOM解析XML文件时,会将XML文件的所有内容读取到内存中,然后允许您使用DOM API遍历XML树、检索所需的数据。xml树在内存中完整存储,因此可以直接修改其数据和结构。

SAX:解析器会判断当前读到的字符是否合法XML 语法中的某部分,如果符合就会触发事件,也就是事件驱动。需要顺序执行,所以很难访问到同一文档中的不同数据.

Pull:和sax类似,是基于流(stream)操作文件,然后根据节点事件回调开发者编写的处理程序。

json解析

原生的方式:JsonObject、JSONArray 解析效率慢,容易出错

Gson:将JSON字符串反序列化为对应的Java对象,或者反过来将Java对象序列化为对应的字符串。

Fastjson:一个java语言编写的高性能且功能完善的JSON函数库.

Jackson:Jackson解析对应的JavaBean必须把Json数据里面的所有key都有所对应,即必须把JSON内的数据所有解析出来,无法按需解析。但Jackson的解析速度和效率都要比GSON高.

Protobuf是一种灵活高效可序列化的数据协议,相于XML,具有更快、更简单、更轻量级等特性
页: [1]
查看完整版本: 网络传输协议 xml、json、protobuf