之前在进行json转换的时候,一般使用Gson,今天在公司中看到有同事使用Jackson,然后学习了一下,发现使用特别简单,现在总结一下基本使用。
首先,引入项目
方法一:
下载Jackson的支持包:
https://oss.sonatype.org/content/repositories/snapshots/com/fasterxml/jackson/core/
添加到Android项目中。
注:添加到projects的libs目录下,重构项目即可
方法二:
com.fasterxml.jackson.core:jackson-core:${jackson-core-version}
com.fasterxml.jackson.core:jackson-annotations:${jackson-annotations-version}
com.fasterxml.jackson.core:jackson-databind:${jackson-databind-version}
其次,就是具体的使用了
1、创建一个bean文件
public class UserBean {
public String name;
public String sex;
public int age;
}
2、Jackson的所有操作都是通过objectMapper这个操作核心来完成的,因此,创建一个objectMapper对象,通过这个对象来操作json或者Java数据,具体的代码如下:
2.1.将json转java
(一)定义一个bean对象
/*** @author panzhijie* @version 2017-01-09 17:48*/public class People {public String nama;public String birthday;public int age;}
(二)创建一个ObjectMapper实例用于转换
ObjectMapper objectMapper = new ObjectMapper();try {objectMapper.writeValue(new File("xx.json"),People.class);//得到json字符串People people = objectMapper.readValue(new File("xx.json"), People.class);} catch (IOException e) {e.printStackTrace();}
readValue(参数一,参数二)方法中的参数一可以是一个json文件,也可以是一个json样式的url链接,还可以是一串json字符串;参数二是要转换成的对象
3.将java转换成json
首先获取和上面一样,获取ObjectMapper实例,然后调用ObjectMapper的writeValue方法
ObjectMapper objectMapper = new ObjectMapper();try {objectMapper.writeValue(new File("xx.json"),People.class);//得到json字符串String s = objectMapper.writeValueAsString(People.class);} catch (IOException e) {e.printStackTrace();}
2229

被折叠的 条评论
为什么被折叠?



