Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好。以下是通过一些例子来了解如何使用Jackson来写或读json。

写json数据到响应的文本中。

[java] view plaincopyprint?
  1. <span style="font-size:14px;">  public void createJsonObject() throws Exception{
  2. JsonFactory jsonFactory = new JsonFactory(); //创建json工厂,主要用来创建json生成器,json解析器的工具
  3. JsonGenerator jsonGenerator
  4. = jsonFactory.createJsonGenerator(new File("D:/test.json"), JsonEncoding.UTF8); //创建json生成器
  5. jsonGenerator.writeStartObject();//开始写入json格式的字符串此语句相当于:"{"
  6. jsonGenerator.writeFieldName("name");//相当于key为"name"
  7. jsonGenerator.writeString("Nacey");//相当于value为"Nacey"
  8. jsonGenerator.writeStringField("sex", "male"); //方法同上//"sex":"male"
  9. jsonGenerator.writeArrayFieldStart("Address"); //创建一个数组类似:Address:[
  10. jsonGenerator.writeString("tel");
  11. jsonGenerator.writeString("1555122120");
  12. jsonGenerator.writeEndArray();
  13. jsonGenerator.writeEndObject();//结束json对象
  14. jsonGenerator.close();
  15. }</span>

输出结果:{"name":"Nacey","sex":"male","Address":["tel","1555122120"]}

Jackson处理JSON非常简单,但要了解JSON文本的格式,这样就可以遍历了,也就可以很方便的读出来了。

[java] view plaincopyprint?
  1. public void parseJsonObject() throws Exception{
  2. JsonFactory jsonFactory = new JsonFactory(); //创建json工厂,主要用来创建json生成器,json解析器的工具
  3. /**
  4. * 解析器是用于标记JSON内容到令牌和相关数据的对象。这是最低级的JSON内容的读访问。
  5. */
  6. JsonParser jsonParse = jsonFactory.createJsonParser(new File("D:/test.json"));
  7. //循环判断下一个令牌是否到结束令牌
  8. while(jsonParse.nextToken() != JsonToken.END_OBJECT){
  9. String fieldName = jsonParse.getCurrentName();
  10. if("name".equals(fieldName)){
  11. jsonParse.nextToken();
  12. System.out.println(jsonParse.getText());
  13. }
  14. if("sex".equals(fieldName)){
  15. jsonParse.nextToken();
  16. System.out.println(jsonParse.getText());
  17. }
  18. if("Address".equals(fieldName)){ //数组判断有没有到数组结束位置
  19. jsonParse.nextToken();
  20. while (jsonParse.nextToken() != JsonToken.END_ARRAY) {
  21. System.out.println(jsonParse.getText());
  22. }
  23. }
  24. }
  25. jsonParse.close();
  26. }

输出结果:

Nacey
male
tel
1555122120

Json对象的对写(Jackson使用)。相关推荐

  1. Json对象的对写(Jackson使用)

    Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好.以下是通过一些例子来了解如何使用Jackson来写或读json. 写json数据到响应的文本中. [java] vie ...

  2. js中读取json对象

        json的用途我也不在这里介绍了,简单说一些JSON的结构: JSON有两种结构 json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以 ...

  3. 2020-08-22 SpringMVC中Json使用、后端返回给前端的JSON对象乱码问题、前台对Json数据格式的操作、Jackson以及FastJson使用

    json的使用 我们广义上说的后端开发提供接口,其实指的是我们在Controller层定义的域名:端口号/请求名 前端获取这个请求,去赋给比如表单的action,获取相应的结果集并展示. json:轻 ...

  4. 将JSON对象带有格式的写出到文件中

    需求:将一个JSON对象写出到文件中,要求文件中的JSON数据带有简单的格式.代码的实现参考了Java算法中的栈处理括号匹配问题.好了,不多说了,下面是代码的实现. 代码: 1 package gem ...

  5. 使用Jackson忽略JSON对象上的新字段[复制]

    本文翻译自:Ignoring new fields on JSON objects using Jackson [duplicate] This question already has an ans ...

  6. jackson如何创建json对象和jackson工具类

    由于阿里巴巴的fastjson经常爆出漏洞,需要频繁升级版本,单位研发部调研随后决定使用jackson作为json解析的工具,我就粗略研究了一下如何使用jackson创建中间json对象,大致测试如下 ...

  7. java hashmap 实现 序列化_java – Jackson JSON对象映射器反序列化为LinkedHashMap而不是HashMap...

    我有一个有内部地图的POJO.我希望从我的 JSON反序列化为HashMap,但Jackson将内部映射从JSON反序列化为LinkedHashMap.我可以通过将Map的类型从"Map&q ...

  8. json对象,java对象,json字符串,java字符串转换方式,没写的自己去看源码!

    package com.sgai.property;import com.alibaba.druid.support.json.JSONUtils; import com.alibaba.fastjs ...

  9. fastjson判空_fastjson JSON 对象为空保留null

    fastjson,对象转json字符串的过程中对value为null的值的一些处理 前言 fastjson是一个非常好用的java库,用于操作对象json序列化等等. 问题 最近在写代码的时候遇到问题 ...

最新文章

  1. Emulator 29.0.3 Canary 发布,Android 模拟器
  2. TCP/IP记一次关于IP地址和MAC物理地址的思考
  3. 鼠标移动区域局部放大
  4. python写dnf游戏脚本辅助_HMM-维特比算法明白与实现(python)_dnf辅助,r6辅助
  5. 《SAS编程与数据挖掘商业案例》学习笔记之十六
  6. leetcode712. 两个字符串的最小ASCII删除和(动态规划)-Gogo
  7. 软件工程编码阶段_软件工程的编码阶段
  8. VMware安装Ubuntu 18.04虚拟机(镜像下载、硬盘分区、创建虚拟机、安装系统、桥接模式网络配置)
  9. 面试问sql优化怎么回答
  10. php修改学生信息代码_PHP连接MySQL数据库添加图书功能
  11. 第一讲(3)osgearth编译
  12. HTTP请求报文与响应报文
  13. CMMI3认证升级CMMI5认证需满足的基本条件
  14. java的json解析工具_json在java中的几种解析工具的使用
  15. USB转串口,JLINK驱动安装(亲测有效)
  16. 计算机软件专业如何选科,软件工程高中选什么科?附新高考软件工程专业选科要求...
  17. python修改ppt的字体和颜色,PPT小技巧:批量修改文字颜色,批量替换字体
  18. 为什么使用LINUX(有点长,没耐心别看)大家自己体会
  19. 如何快速使计算机锁屏,电脑如何一键锁屏?有急事时如何快速锁屏?[多图]
  20. PyTorch语音识别框架,将语音转成文本格式

热门文章

  1. YT1s 一款免费在线的youtube mp3 mp4下载器
  2. 工业防火墙架构与技术【第二节:硬件架构①】
  3. 学前教育专业计算机实训室建设方案,学前教育专业实训室建设方案..doc
  4. [4G5G专题-115]:部署 - LTE跟踪区TA以及其规划
  5. 类的练习:模拟电子秒表
  6. CorelDRAW X3 涂抹笔刷
  7. asp.net服装连锁店管理系统
  8. php怎么输出倒三角_倒三角到底怎么练?3个动作教你后背塑造!
  9. 乔布斯(Steve Jobs)05年在斯但福大学的演讲
  10. 鸟哥Linux-第六章、Linux 的档案权限与目录配置