Jackson 美化输出JSON,优雅的输出JSON数据,格式化输出JSON数据... ...

JSON 2017-09-05 14:03:51 147462

一下用了这么多形容词,就是怕你们找不到。Jackson 美化输出JSON,优雅的输出JSON数据,格式化输出JSON数据

其实本站的第一个工具,也就是首页的,就是JSON格式化输出,但是增加了校验功能,以及中文提示问题所在。比如如下  JSON  少了一个“,”。

好了,介绍完毕,开始走代码吧。

Jackson 格式化输出JSON 代码说明(对象)

我们一般输出就是普通的toString 输出。如下代码:

Demo demo = new Demo("sojson",4,"https://www.sojson.com");
ObjectMapper mapper = new ObjectMapper();
System.out.println(mapper.writeValueAsString(demo));

输出结果:

{"name":"sojson","age":4,"domain":"https://www.sojson.com"}

非常不利于肉眼观看,而且一大坨,如果是JSON很大的话,那么更难受。那么我们美化输出呢?

美化/优雅/格式化输出,代码如下:

public static void main(String[] args) throws JsonProcessingException {
    Demo demo = new Demo("sojson",4,"https://www.sojson.com");
    ObjectMapper mapper = new ObjectMapper();
    //普通输出
    System.out.println(mapper.writeValueAsString(demo));
    //格式化/美化/优雅的输出
    System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(demo));
}

输出结果:

{
  "name" : "sojson",
  "age" : 4,
  "domain" : "https://www.sojson.com"
}

是不是结果很nice?下面再看下字符串输出。

Jackson 格式化输出JSON 代码说明(字符)

其实这里就是把字符串转成对象(Object ),然后再输出的。

优雅输出 Java代码:

public static void main(String[] args) throws IOException {
   //已知一个json 字符串
    String json = "{\"name\":\"sojson\",\"age\":4,\"domain\":\"https://www.sojson.com\"}";
    //求优雅输出
    ObjectMapper mapper = new ObjectMapper();
    Object obj = mapper.readValue(json, Object.class);
    System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj));
}

输出结果:

{
  "name" : "sojson",
  "age" : 4,
  "domain" : "https://www.sojson.com"
}

这里有的同学是不是想到,如果直接用上面的方法(writerWithDefaultPrettyPrinter() )呢,因为参数类型是Object ,其实我看了源码,Object 是为了你方便传参为各种你的对象。如果你传的String ,那么直接出来String 了。也就是还是输出原来的方式。当然你也可以试试。

Jackson Maven引入:

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.7.4</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.7.4</version>
</dependency>
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-annotations</artifactId>
    <version>2.7.4</version>
</dependency>

测试类请在附件中下载。

版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/245.html

转载时必须以链接形式注明原始出处及本声明。


附件下载:

备注:点击文件名下载,附件源来自云端,只能在本站下载。复制下载链接无效。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

关于作者
一个低调而闷骚的男人。
相关文章
最新文章
Flink 在又拍云日志批处理中的实践 1530
个推异常值检测和实战应用-又拍云 192
TCP 和 UDP协议详细讲解,优缺点分析讲解 4947
URL中乱七八糟的字符讲解,来源以及如何解决 2767
HTTP/3 来了,您真的了解它么? 4128
当我谈 HTTP 时,我谈些什么? 10308
新浪短链(t.cn)最新申请官方API的方法讲解。 59374
QUIC / HTTP3 协议详细分析讲解 7217
恭喜那个做云存储的七牛云完成 F 轮 10 亿人民币的融资,开启新的云旅程 7933
Autojs怎么安全加密?Autojs在线加密工具注意事项。 30463
最热文章
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 625884
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 568474
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 483564
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 461208
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 380098
Elasticsearch教程(四) elasticsearch head 插件安装和使用 370601
谈谈斐讯路由器劫持,你用斐讯路由器,你需要知道的事情 192358
Java 信任所有SSL证书,HTTPS请求抛错,忽略证书请求完美解决 191356
Elasticsearch教程(一),全程直播(小白级别) 171571
Jackson 美化输出JSON,优雅的输出JSON数据,格式化输出JSON数据... ... 147450
支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...