文档章节

jackson 序列化测试(一)

519617
 519617
发布于 2016/05/12 16:50
字数 205
阅读 46
收藏 0
点赞 2
评论 0

需要的jar包:jackson-all-x.x.x.jar

示例代码:

package com.test;

import java.io.IOException;
import java.io.Serializable;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import org.codehaus.jackson.JsonGenerationException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;


public class JacksonTest {

	public static void main(String[] args) throws JsonGenerationException, JsonMappingException, IOException {

		ObjectMapper objectMapper = new ObjectMapper();
		//list
//		String teststringlist = objectMapper.writeValueAsString(getList()); 
		//javaBean对象
		objectMapper.getSerializationConfig().setDateFormat((DateFormat) new SimpleDateFormat("yyyy-MM-dd"));//设置时间格式
		String teststringlist = objectMapper.writeValueAsString(new User("zhangsan", "1234",new Date(), getList())); 
		System.out.println(teststringlist);
	}

	public static List<String> getList() {
		List<String> list = new ArrayList<String>();
		list.add("football");
		list.add("hiking");
		list.add("swimming");
		return list;
	}

}

class User implements Serializable{
	/**
	 * 
	 */
	private static final long serialVersionUID = -7977118347715917038L;
	String username;
	String password;
	Date birthday;
	List<String> hobby;
	
	User(String username, String password, Date birthday, List<String> hobby){
		this.username = username;
		this.password = password;
		this.birthday = birthday;
		this.hobby = hobby;
	}

	public String getUsername() {
		return username;
	}

	public String getPassword() {
		return password;
	}
	
	public Date getBirthday() {
		return birthday;
	}

	public List<String> getHobby() {
		return hobby;
	}
	
}

注意:

如果要将某个类转成Json字符串,则必须要求其属性为public,或者提供public的get()方法。

© 著作权归作者所有

共有 人打赏支持
519617
粉丝 1
博文 46
码字总数 33472
作品 0
东城
jackson常用注解和spring中的配置

spring默认使用的是jackson处理json的序列化和反序列化,有一些细节和小坑,基于spring4和jackson2.8做一些说明 @JsonIgnore @JsonIgnore是jackson的注解,jackson1版本和2版本没有区别,通常...

肥肥小浣熊 ⋅ 2017/12/01 ⋅ 0

Fastjson和Jackson序列化和读取json的性能实测

偶然间看到的阿里出品的Fastjson,网上对这个json包好评如潮,性能胜Jackson10倍。 本人本着眼见为实的想法,自己测试一下两者的性能比较。 POJO对象名字为User,具体代码就不贴了,里面有两...

derekxyz ⋅ 2014/04/24 ⋅ 0

各种 Java 的序列化库的性能比较测试结果

免责声明 本次测试专注于 cyclefree 数据结构的编码和解码。一些序列化程序支持循环检测/对象共享,一些序列化程序两种模型都支持,一些序列化程序包括了元数据,一些则没有,有的是跨平台的...

孔小菜 ⋅ 2015/06/02 ⋅ 4

Beetl-JSON 0.9 发布,JSON 个性化序列工具

Beetl-Json 提供了Java对象序列化成json技术。其原理是基于(Location:action)*,功能强大,扩展性强,而体积小,仅仅不到70K。它能允许通过序列化策略(也支持传统的Annotation)来个性化的序列...

闲大赋 ⋅ 2015/05/28 ⋅ 12

有效选择七个关于Java的JSON开源类库

April 4, 2014 By Constantin Marian Alin 翻译:无若 (英语原文:http://www.developer.com/lang/jscript/top-7-open-source-json-binding-providers-available-today.html) 简介 JSON是J......

无若 ⋅ 2014/04/19 ⋅ 1

有效选择七个关于 Java 的 JSON 开源类库

有效选择七个关于Java的JSON开源类库 April 4, 2014 By Constantin Marian Alin 翻译:无若 (英语原文:http://www.developer.com/lang/jscript/top-7-open-source-json-binding-providers-......

无若 ⋅ 2014/04/19 ⋅ 14

Jackson异常情况处理

1、空值转换-异常情况: Can not instantiate value of type [map type; class java.util.HashMap, [simple type, class java.lang.String] -> [simple type, class java.lang.String]] from......

BKC ⋅ 2016/09/29 ⋅ 0

利用Jackson进行JSON序列化和解析

对于JSON,大家常用的就是Gson、JackSon、FastSon,那么今天先来介绍利用JackSon进行JSON的序列化和解析。 首先,IDE我选择使用IDEA,那么自然也会使用MAVEN来管理依赖,一下是pox.xml的配置...

stock0991 ⋅ 2017/06/30 ⋅ 0

Jackson 框架的高阶应用

Jackson 框架的高阶应用 刘万振 2017 年 11 月 15 日发布 Jackson 是当前用的比较广泛的,用来序列化和反序列化 json 的 Java 的开源框架。Jackson 社 区相对比较活跃,更新速度也比较快, ...

刘万振 ⋅ 2017/11/15 ⋅ 0

fastjson 发布 1.1.0 版本

这个版本引入了asm优化encode和decode的性能,使用了新的预测读取优化算法,大幅度提升了decode的性能。这个版本没有bug fixed。 Improvement [FASTJSON-51] - 提供按字段名称顺序输出,具体...

小编辑 ⋅ 2011/07/19 ⋅ 2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JEPLUS主从功能配置之主从布局的设置——JEPLUS软件快速开发平台

JEPLUS主从功能配置之主从布局的设置 主从功能配置成功之后就需要根据业务需求来调整主从功能的数据显示方式,不同的主从数据的显示可以达到不同的主从数据显示效果,今天这篇笔记就讲解一下...

JEPLUS ⋅ 3分钟前 ⋅ 0

如何利用极光推送的新功能玩转世界杯营销

四年一次的世界杯已经于6月14日开赛!对于app的运营人员而言,这场远在俄罗斯的绿茵征战绝不仅仅牵动着球迷们的心,更拨动着众多互联网企业运营人员的神经。在这场营销大战中,push显然是app...

极光推送 ⋅ 7分钟前 ⋅ 0

Spring Cloud构建微服务架构-Hystrix依赖隔离

依赖隔离 “舱壁模式”对于熟悉Docker的读者一定不陌生,Docker通过“舱壁模式”实现进程的隔离,使得容器与容器之间不会互相影响。而Hystrix则使用该模式实现线程池的隔离,它会为每一个Hys...

itcloud ⋅ 9分钟前 ⋅ 0

SpringCloud 微服务 (八) 统一配置中心 Config Server&Client

壹 Spring Cloud Config 统一配置中心,方便维护配置文件,对一些公司对数据库密码等敏感的信息,对普通开发人员不公开,放在运维人员手上,对配置作一个隔离作用,另外项目线上的配置改动都要重新...

___大侠 ⋅ 12分钟前 ⋅ 0

echarts轮播地图并结合鼠标浮动点击

直接上代码 timeId=setInterval(function () { if(count<11){ myChart.dispatchAction({ type: 'downplay', ......

莫西摩西 ⋅ 15分钟前 ⋅ 0

基于 HTML5 的工业互联网 3D 可视化应用

工业企业中生产线处于高速运转,由工业设备所产生、采集和处理的数据量远大于企业中计算机和人工产生的数据,生产线的高速运转则对数据的实时性要求也更高。破解这些大数据就是企业在新一轮制...

xhload3d ⋅ 18分钟前 ⋅ 0

Nging启动与停止bat

start_nginx.bat @echo off  f:  cd F:\server\nginx-1.13.6  echo "nginx is starting on port 80"  start "" "nginx.exe"  exit   stop_nginx.bat @echo off::windows ......

Jay丶 ⋅ 19分钟前 ⋅ 0

SuRF: 一个优化的 Fast Succinct Tries

作者:唐刘 在前一篇文章中,我简单介绍了 Succinct Data Structure,这里我们继续介绍 SuRF。 Fast Succinct Tries SuRF 的核心数据结构就是 Fast Succinct Tries(FST),一种空间节省,支...

TiDB ⋅ 24分钟前 ⋅ 0

Kubernetes(六) - Secret和私有仓库认证

对一个公司来说安全也是最为重要的因为可能一旦出现安全问题可能这个公司就完了,所以对密码管理是一个长久不变的话题,Kubernetes对密码管理提供了Secret组件进行管理,最终映射成环境变量,文件...

喵了_个咪 ⋅ 25分钟前 ⋅ 0

DevOps的三大原则

DevOps的出现有其必然性。在软件开发生命周期中,遇到了两次瓶颈。第一次瓶颈是在需求阶段和开发阶段之间,针对不断变化的需求,对软件开发者提出了高要求,后来出现了敏捷方法论,强调适应需...

inidcard ⋅ 25分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部