Java JSON

Java JSON – Convert Java Object To / From JSON (Jackson)

JSON(JavaScript Object Notation)是一种轻量级的数据交换语言,以文字为基础,且易于让人阅读。尽管JSON是Javascript的一个子集,但JSON是独立于语言的文本格式,并且采用了类似于C语言家族的一些习惯。 维基百科:http://zh.wikipedia.org/wiki/JSON

Jackson is a High-performance JSON processor Java library–Jackson是高性能解析JSON的Java lib

核心代码:

//1. Convert Java object to JSON formatObjectMapper mapper = new ObjectMapper();mapper.writeValue(new File("c:\\user.json"), user);
//2. Convert JSON to Java objectObjectMapper mapper = new ObjectMapper();User user = mapper.readValue(new File("c:\\user.json"), User.class);

以下为具体例子:

一. POJOUser.java

package com.jiangge.jkstest;import java.util.ArrayList;import java.util.List;public class User {private int age = 23;private String name = "jiangge";private String qqNum = "499065469";private List<String> message = new ArrayList<String>() {{add("msg 1");add("msg 2");add("msg 3");}};public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public List<String> getMessage() {return message;}public void setMessage(List<String> message) {this.message = message;}public String getqqNum() {return qqNum;}public void setqqNum(String qq) {this.qqNum = qq;}@Overridepublic String toString() {return "User [age=" + age + ", name=" + name + ", message=" + message+ "]";}}

二. Java Object to JSONConvert an “user” object into JSON formatted string, and save it into a file “user.json“.

package com.jiangge.jkstest;import java.io.File;import java.io.IOException;import com.fasterxml.jackson.core.JsonGenerationException;import com.fasterxml.jackson.databind.JsonMappingException;import com.fasterxml.jackson.databind.ObjectMapper;//To make this work with the latest (1.9.3) Jackson, //there must be getters and setters for the members in the User class.public class JacksonExampleToJson {public static void main(String[] args) { User user = new User();ObjectMapper objMapper = new ObjectMapper();try {// convert user object to json string, and save to a fileobjMapper.writeValue(new File("c:\\user.json"), user);// display to consoleSystem.out.println(objMapper.writeValueAsString(user));} catch (JsonGenerationException e) {e.printStackTrace();} catch (JsonMappingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace(); }   }}

控制台输出:

{"age":23,"name":"jiangge","qqNum":"499065469","message":["msg 1","msg 2","msg 3"]}

三. JSON to Java ObjectRead JSON string from file “user.json“, and convert it back to Java object.

package com.jiangge.jkstest;import java.io.File;import java.io.IOException;import com.fasterxml.jackson.core.JsonGenerationException;import com.fasterxml.jackson.databind.JsonMappingException;import com.fasterxml.jackson.databind.ObjectMapper;public class JacksonExampleRead {public static void main(String[] args) { ObjectMapper objMapper = new ObjectMapper();try {// read from file, convert it to user classUser user = objMapper.readValue(new File("c:\\user.json"), User.class);// display to consoleSystem.out.println(user); } catch (JsonGenerationException e) {e.printStackTrace();} catch (JsonMappingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}   } }

控制台输出:

User [age=23, name=jiangge, message=[msg 1, msg 2, msg 3]]

参考资料:

http://www.mkyong.com/java/how-to-convert-java-object-to-from-json-jackson/

需要更多资料时,可查看:

http://www.mkyong.com/tutorials/java-json-tutorials/

只想到处流浪人生就像一场旅行,不必在乎目的地,

Java JSON

相关文章:

你感兴趣的文章:

标签云: