用 Jackson 来处理 JSON
Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好。
首先创建一个User对象类 (User.java)
package com.sivalabs.json; import java.util.Date; public class User {
private String userId;
private UserName userName;
private Date dob; @Override
public String toString(){
return "User [dob=" + dob + ", userId=" + userId + ", userName="+ userName + "]";
}
//setters and getters }
UserName.java
package com.sivalabs.json; public class UserName {
private String firstname;
private String middlename;
private String lastname; @Override
public String toString()
{
return "UserName [firstname=" + firstname +
", lastname=" + lastname+
", middlename=" + middlename + "]";
}
//setters and getters
}
[Java]代码
//接下来创建User实例,并生成JSON数据 ObjectMapper mapper = new ObjectMapper(); UserName userName = new UserName();
userName.setFirstname("Katamreddy");
userName.setMiddlename("Siva");
userName.setLastname("PrasadReddy"); User user = new User();
user.setUserId("1");
user.setUserName(userName);
user.setDob(new Date()); Writer strWriter = new StringWriter();
mapper.writeValue(strWriter, user);
String userDataJSON = strWriter.toString();
System.out.println(userDataJSON);
执行结果
{
"userId":"1",
"userName":
{
"firstname":"Katamreddy",
"middlename":"Siva",
"lastname":"PrasadReddy"
},
"dob":1300878089906
}
接下来进行JSON到Java对象的转换
String userDataJSON =
"{\"userId\":\"100\",\"userName\":{\"firstname\":\"K\""+
",\"middlename\":\"Siva\",\"lastname\":\"Prasad\"},\"dob\":1300878089906}";
User userFromJSON = mapper.readValue(userDataJSON, User.class);
System.out.println(userFromJSON);
时间的格式化处理
DateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");
SerializationConfig serConfig = mapper.getSerializationConfig();
serConfig.setDateFormat(dateFormat);
DeserializationConfig deserializationConfig = mapper.getDeserializationConfig();
deserializationConfig.setDateFormat(dateFormat);
mapper.configure(SerializationConfig.Feature.WRITE_DATES_AS_TIMESTAMPS, false);
[Java]代码
//从文件中读取JSON数据
User user = mapper.readValue(new File("user.json"), User.class);
</div>
用 Jackson 来处理 JSON的更多相关文章
- 用jackson包实现json、对象、Map之间的转换
jackson API的使用 用jackson包实现json.对象.Map之间的转换
- jackson实体转json时 为NULL不参加序列化的汇总
首先加入依赖 <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson ...
- 使用jackson美化输出json/xml
转载:http://www.cnblogs.com/xiwang/ 如何使用jackson美化输出json/xml 1.美化POJO序列化xml 下面将POJO列化为xml并打印. Person pe ...
- 如何使用jackson美化输出json/xml
如何使用jackson美化输出json/xml 1.美化POJO序列化xml 下面将POJO列化为xml并打印. Person person = new Person(); //设置person属性 ...
- Jackson 对象与json数据互转工具类JacksonUtil
1,User对象 package com.st.json; import java.util.Date; /** * @Description: JSON序列化和反序列化使用的User类 * @aut ...
- jackson解析处理JSON
package com.ruoyi.common.json; import java.io.File; import java.io.IOException; import java.io.Input ...
- Jackson轻易转换JSON
原文http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html Jackson可以轻松的将Java对象转换成json对象和xml文档,同样 ...
- 用jackson封装的JSON工具类
package hjp.smart4j.framework.util; import com.fasterxml.jackson.databind.ObjectMapper; import org.s ...
- Jackson如何使JSON输出变得优雅?
本篇文章翻译自:How to enable pretty print JSON output (Jackson) 在这篇文章中,我们将教你如何利用Jackson Library在控制台或者JSP页面优 ...
- Jackson 高性能的JSON处理 ObjectMapper
http://blog.csdn.net/wangyang2698341/article/details/8223929 今天自行研究了下json ,感觉非常好用,经过测试比google的GSON快多 ...
随机推荐
- vijos 1190 繁忙的都市
描述 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两个交叉路口之间最多有一条道路 ...
- 运行powershell 脚本 在此系统上禁止运行脚本
解决方法: 首次在计算机上启动 Windows PowerShell 时,现用执行策略很可能是 Restricted(默认设置). Restricted 策略不允许任何脚本运行. 若要了解计算机上的现 ...
- cocoapods学习
1.安装 http://stackoverflow.com/questions/16459028/rvm-install-error-running-requirements-osx-port-ins ...
- Fedora19添加和设置YUM源
Fedora19添加和设置YUM源添加yum源前先安装fastestmirror/downloadonly插件和axelget插件: 1.安装fastestmirror/downloadonly插件 ...
- 2010: C语言实验——逆置正整数
2010: C语言实验——逆置正整数 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 949 Solved: 691[Submit][Status][We ...
- CAD交互绘制块引用对象(网页版)
主要用到函数说明: _DMxDrawX::DrawBlockReference 绘制块引用对象.详细说明如下: 参数 说明 DOUBLE dPosX 插入点的X坐标 DOUBLE dPosY 插入点的 ...
- python面向对象编程(OOP)
python作为一种解释性语言,其主要的编程方式就是面向对象,而且python的框架django也是主要面向对象的编程. 类(class)和对象(object) 类(class)是用来描述具有相同属性 ...
- mysqldump指令说明
3种形式mysqldump [OPTIONS] database [tables]mysqldump [OPTIONS] -B | --databases [OPTIONS] DB1 [DB2 DB3 ...
- RN在设备上运行
https://facebook.github.io/react-native/docs/running-on-device.html 在发布之前,最好是在真实的设备上测试一下应用.如果是通过crea ...
- 5.电影搜索之 自动填充,也叫autocomplete、搜索建议!
什么叫自动填充,用过百度的应该都知道!当你输入关键词之后,会有一个下拉的候选列表,都是与你输入的内容相关的,这个就是自动填充的搜索建议.一般的搜索引擎或者站内搜索都会有这个功能. 今天分享下这个功能的 ...