java jettison_java-Jettison或Kryo
我目前正在将JAXB用于我正在从事的项目,并希望将我的库存档xml转换为存档json,以在我的项目中执行任务.我以为我会使用Jettison,因为它实际上可以与JAXB一起使用,所以它看起来像是easier to implement.但是,查看不包含Jettison的Older benchmarks,我发现Kryo生成的文件更小,并且序列化和反序列化的速度比某些替代方法更快.
谁能告诉我主要的不同之处,否则我可以将Jettison与Kryo的堆叠方式,特别是对于诸如Android应用程序之类的未来项目而言.
编辑:
我想我正在寻找产生较小文件并且运行更快的文件.因为我不打算只处理文件而只读取文件,所以会牺牲人类的可读性
解决方法:
由于您已经建立了JAXB映射并将XML转换为JSON,因此您可能会对EclipseLink JAXB(MOXy)感兴趣,它使用相同的JAXB元数据提供了对象到XML和对象到JSON的映射.
顾客
下面是带有JAXB批注的示例模型.
package forum11599191;
import java.util.List;
import javax.xml.bind.annotation.*;
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Customer {
@XmlAttribute
private int id;
private String firstName;
@XmlElement(nillable=true)
private String lastName;
private List email;
}
jaxb.properties
javax.xml.bind.context.factory=org.eclipse.persistence.jaxb.JAXBContextFactory
input.xml
Jane
jdoe@example.com
演示版
以下演示代码将从XML中填充对象,然后输出JSON.请注意,MOXy上没有编译时间相关性.
package forum11599191;
import java.io.File;
import javax.xml.bind.*;
public class Demo {
public static void main(String[] args) throws Exception {
JAXBContext jc = JAXBContext.newInstance(Customer.class);
// Unmarshal from XML
Unmarshaller unmarshaller = jc.createUnmarshaller();
File xml = new File("src/forum11599191/input.xml");
Customer customer = (Customer) unmarshaller.unmarshal(xml);
// Marshal to JSON
Marshaller marshaller = jc.createMarshaller();
marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, true);
marshaller.setProperty("eclipselink.media-type", "application/json");
marshaller.marshal(customer, System.out);
}
}
JSON输出
以下是运行演示代码的输出.
{
"customer" : {
"id" : 123,
"firstName" : "Jane",
"lastName" : null,
"email" : [ "jdoe@example.com" ]
}
}
关于输出的一些注意事项:
>由于id字段是数字类型,因此将其编组为JSON,且不带引号.
>即使id字段是使用@XmlAttribute映射的,在JSON消息中也没有对此的特殊指示.
> email属性的大小为1,这在JSON输出中正确表示.
> xsi:nil机制用于指定lastName字段具有null值,该值已转换为JSON输出中的正确null表示形式.
欲获得更多信息
标签:serialization,deserialization,kryo,json,java
来源: https://codeday.me/bug/20191101/1980775.html
java jettison_java-Jettison或Kryo相关推荐
- avro和java原生序列化的区别,java原生序列化和Kryo序列化性能比较
简介 最近几年,各种新的高效序列化方式层出不穷,不断刷新序列化性能的上限,最典型的包括: 专门针对Java语言的:Kryo,FST等等 跨语言的:Protostuff,ProtoBuf,Thrift, ...
- 【java】java原生序列化和Kryo序列化性能实例对比分析
1.美图 2.概述 最近几年,各种新的高效序列化方式层出不穷,不断刷新序列化性能的上限,最典型的包括: 专门针对Java语言的:Kryo,FST等等 跨语言的:Protostuff,ProtoBuf, ...
- java jettison_java – 使用Jettison进行JSON解析
我试图使用Jettison解析JSON对象. 这是我正在使用的代码 String s ="{\"appUsage\":[{\"appName\":\& ...
- java jettison_java - 使用Jettison进行JSON解析 - 堆栈内存溢出
如果您最终正在寻找使用JAXB(JSR-222)实现与JSON交互的方法,那么以下是使用MOXy完成它的方法. Jettison是一个有趣的库,但是你会遇到一些问题: 演示 仅使用标准Java SE ...
- java jettison_Java常用Json库性能对比
Java对于处理JSON数据的序列化与反序列化目前常用的类库有Gson.FastJSON.Jackson.jettison以及json-lib.在这里我们将对这些类库在json序列化与反序列化方面的性 ...
- 在Dubbo中使用高效的Java序列化(Kryo和FST)
作者:沈理 文档版权: Apache 2.0许可证 署名-禁止演绎 完善中-- TODO 生成可点击的目录 目录 序列化漫谈 启用Kryo和FST 注册被序列化类 无参构造函数和Serializabl ...
- kryo java_优化Java序列化– Java,XML,JSON,Kryo,POF
kryo java 也许我很天真,但是我一直认为Java序列化肯定是将Java对象序列化为二进制形式的最快,最有效的方法. 毕竟Java是第7个主要发行版,所以这不是新技术,而且由于每个JDK似乎都比 ...
- 优化Java序列化– Java,XML,JSON,Kryo,POF
也许我很天真,但是我一直认为Java序列化肯定是将Java对象序列化为二进制形式的最快,最有效的方法. 毕竟Java是第7个主要发行版,所以这不是新技术,并且由于每个JDK似乎都比上一个快,因此我错误 ...
- 带有RESTEasy + JAXB + Jettison的JSON示例
RESTEasy使用Jettison JSON库在JSON之间来回映射JAXB注释对象. 在本教程中,我们向您展示如何将带有JAXB注释的对象转换为JSON格式并将其返回给客户端. 杰克逊(Jac ...
最新文章
- JQ 全选后获取选中的值_为什么在PBI中还需要切片器之三:Excel切片器之度量值切换...
- ThreadLocal 原理 以及设计思想
- 让AI说话告别三观不正,OpenAI只用80个文本就做到了
- python包的中 _init _.py文件介绍
- CSRF Failed: CSRF token missing or incorrect.
- java ftp上传超时_java - Java FTP连接超时 - 堆栈内存溢出
- Codevs 1025 选菜
- sqlachemy入门基础手册
- php学习去哪,php可以从哪里学习
- 标签地址src路径拼接_第二十四天HTML一些常见的标签
- 源码部署Apache和shell脚本安装
- Shader初级(纹理坐标篇)
- 【测试用例练习】十、微信朋友圈点赞 和发红包 测试用例
- 为了治好拖延症,我祭出了这个自虐的项目,把我搞的卧槽卧槽的
- Hadoop集群配置
- 斐波那契数列(C/C++)
- 大数据与云计算技术---(一)hadoop大数据平台
- 自动控制原理笔记(5)——线性系统的根轨迹法
- 谷歌翻译 网页嵌入代码_在网页上嵌入Google地图
- Centos7下joshua6.0.5完整的安装过程
热门文章
- 【转载】池建强--趣谈个人建站
- 芋道源码的周八(2018.01.14)
- [词性] 十六、介词 6 [ inside ] [ like ] [ near ] [ of ] [ off ] [ past ] [ around ]
- 【JavaScript高级05】JavaScript第二大神兽:闭包
- 什么是接口测试?这篇文章让你明白
- 深度学习代码入门test2_alexnet
- 算法讲解:二分图匹配
- mysql数据库修改列排序规则_更改数据库排序规则
- ps语义分割_图像语义分割训练经验总结--图像语义分割
- 超实用的7种 pytorch 网络可视化方法,进来收藏一波