对象序列化成JSON格式

json是一种轻量级的数据交换语言,将对象序列化为json格式,可以在网络上传输,且各个平台都有成熟的工具,可以很快的将json反序列化为对应语言所需要的格式。

将java对象序列化为json格式关键代码如下:

Person person = new Person();
person.setName("zhangsan");
person.setBirth(new Date());
person.setAge(18);
	
//JSON对象序列化
String jsonPerson = null;
ObjectMapper objectMapper = new ObjectMapper();
StringWriter stringWriter = new StringWriter();
JsonGenerator createJsonGenerator = new JsonFactory().createJsonGenerator(stringWriter);
objectMapper.writeValue(stringWriter, person);
createJsonGenerator.close();
jsonPerson = stringWriter.toString();

打印结果:

{"name":"zhangsan","age":18,"birth":1504335725150}

这里需要引入maven依赖

<dependency>
	<groupId>org.codehaus.jackson</groupId>
	<artifactId>jackson-mapper-asl</artifactId>
	<version>1.9.13</version>
</dependency>

需要使用工具包中的ObjectMapper 类,传入JsonGenerator 对象,将person对象序列化为json格式。
通过该工具包同样可以将json串反序列化为java对象,代码如下:

Person readValue = objectMapper.readValue(jsonPerson, Person.class);

只需要传入json串和Person类的class,就可以将json串反序列化为person对象。
还有一种方法是:

KeyValueVO message = new KeyValueVO();
message.setKey("111");
message.setValue("222");
String jsonString = JSON.toJSONString(message);
JSONObject parseObject = JSONObject.parseObject(jsonString);
System.out.println(parseObject);

需引入maven依赖:

<dependency>
		<groupId>com.alibaba</groupId>
		<artifactId>fastjson</artifactId>
		<version>1.2.7</version>
</dependency>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值