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的更多相关文章

  1. 用jackson包实现json、对象、Map之间的转换

    jackson API的使用 用jackson包实现json.对象.Map之间的转换

  2. jackson实体转json时 为NULL不参加序列化的汇总

    首先加入依赖 <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson ...

  3. 使用jackson美化输出json/xml

    转载:http://www.cnblogs.com/xiwang/ 如何使用jackson美化输出json/xml 1.美化POJO序列化xml 下面将POJO列化为xml并打印. Person pe ...

  4. 如何使用jackson美化输出json/xml

    如何使用jackson美化输出json/xml 1.美化POJO序列化xml 下面将POJO列化为xml并打印. Person person = new Person(); //设置person属性 ...

  5. Jackson 对象与json数据互转工具类JacksonUtil

    1,User对象 package com.st.json; import java.util.Date; /** * @Description: JSON序列化和反序列化使用的User类 * @aut ...

  6. jackson解析处理JSON

    package com.ruoyi.common.json; import java.io.File; import java.io.IOException; import java.io.Input ...

  7. Jackson轻易转换JSON

    原文http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html Jackson可以轻松的将Java对象转换成json对象和xml文档,同样 ...

  8. 用jackson封装的JSON工具类

    package hjp.smart4j.framework.util; import com.fasterxml.jackson.databind.ObjectMapper; import org.s ...

  9. Jackson如何使JSON输出变得优雅?

    本篇文章翻译自:How to enable pretty print JSON output (Jackson) 在这篇文章中,我们将教你如何利用Jackson Library在控制台或者JSP页面优 ...

  10. Jackson 高性能的JSON处理 ObjectMapper

    http://blog.csdn.net/wangyang2698341/article/details/8223929 今天自行研究了下json ,感觉非常好用,经过测试比google的GSON快多 ...

随机推荐

  1. atom 自定义快捷键

    'atom-text-editor': 'shift-alt-i':'core:move-up' 'shift-alt-space':'core:move-down' 'shift-alt-l':'c ...

  2. leetcode_day1

    1.给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数组中同样 ...

  3. NLP.TM | GloVe模型及其Python实现

    在进行自然语言处理中,需要对文章的中的语义进行分析,于是迫切需要一些模型去描述词汇的含义,很多人可能都知道word2vector算法,诚然,word2vector是一个非常优秀的算法,并且被广泛运用, ...

  4. javaEE(10)_jdbc基本使用

    一.JDBC简介 1.SUN公司为了简化.统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC,JDBC(Java Data Base Connectivity,java数据库连接) ...

  5. Xcode 6 创建 Empty Application

    1.创建一个 Single View Application: 2.删除工程目录下的 Main.storyboard 和 LaunchScreen.xib: 3.打开 Supporting Files ...

  6. ios之UIWebView(1)

    UIWebView可以让你创建一个网页浏览器,类似safari,而不是在程序中启动safsri哦.是不是觉得很棒呢?废话少说,切入正题. 一.创建UIWebView [java] view plain ...

  7. 继上一篇随笔,优化3张以上图片轮播React组件

    import React from 'react'; import PropTypes from 'prop-types'; import {getSwipeWay} from '../utils/s ...

  8. Codeforces Round #510 #C Array Product

    http://codeforces.com/contest/1042/problem/C 给你一个有n个元素序列,有两个操作:1,选取a[i]和a[j],删除a[i],将$a[i]*a[j]$赋值给a ...

  9. windows使用文件服务器搭建Git服务器

    背景: 1.windows下搭建git服务器. 2.git服务器搭建在局域网文件共享区中. 3.没有复杂的权限控制,文件共享区都有访问权限. 步骤: 1.文件共享区中创建git远程仓库. 2.本地克隆 ...

  10. 牛客网NOIP赛前集训营-普及组(第二场)和 牛客网NOIP赛前集训营-提高组(第二场)解题报告

    目录 牛客网NOIP赛前集训营-普及组(第二场) A 你好诶加币 B 最后一次 C 选择颜色 D 合法括号序列 牛客网NOIP赛前集训营-提高组(第二场) A 方差 B 分糖果 C 集合划分 牛客网N ...