加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

XML跟Json的一些对比

发布时间:2020-12-16 05:14:24 所属栏目:百科 来源:网络整理
导读:xml、json序列化反序列化时间对比 结果:单位(毫秒) xml:30810 fastjson:859 gson:1482 源代码: private void compTime() {Person p = new Person();p.setAge(23);p.setName("李志鹏");p.setBirthday(new Date());long count = 100000;System.out.println

xml、json序列化反序列化时间对比

结果:单位(毫秒)

xml:30810

fastjson:859

gson:1482

源代码:

private void compTime() {

	Person p = new Person();
	p.setAge(23);
	p.setName("李志鹏");
	p.setBirthday(new Date());

	long count = 100000;

	System.out
			.println("-----------------------compTime-----------------------");

	long startMili;
	long endMili;

	startMili = System.currentTimeMillis();
	for (int i = 0; i < count; i++) {
		Writer writer = new StringWriter();
		JAXB.marshal(p,writer);

		String xml = writer.toString();
		Reader reader = new StringReader(xml);
		Person retP = JAXB.unmarshal(reader,p.getClass());
	}
	endMili = System.currentTimeMillis();
	System.out.println("xml:" + (endMili - startMili));

	startMili = System.currentTimeMillis();
	for (int i = 0; i < count; i++) {
		String json = JSON.toJSONString(p);
		Person retP = JSON.parSEObject(json,new TypeReference<Person>() {
		});
	}
	endMili = System.currentTimeMillis();
	System.out.println("fastjson:" + (endMili - startMili));
	
	startMili = System.currentTimeMillis();
	Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss")
			.create();
	for (int i = 0; i < count; i++) {
		String json = gson.toJson(p);
		Person retP = gson.fromJson(json,new TypeToken<Person>() {
				}.getType());
	}
	endMili = System.currentTimeMillis();
	System.out.println("gson:" + (endMili - startMili));		
}

序列化同一对象形成的数据大小对比:

结果:单位:字节

json:368
xml:568


源代码:

	private void compSize() {

		Map<String,Object> map = TestPrepareData.getStudentAndTeacher();
		String json = JSON.toJSONString(map);
		String xml = XmlJson.json2xml(json);

		System.out.println("json:" + json);
		System.out.println("xml:" + xml);
		System.out.println("json:" + json.length());
		System.out.println("xml:" + xml.length());

	}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读