Jackson 美化輸出JSON,優雅的輸出JSON數據,格式化輸出JSON數據... ...

soゝso 2017-09-05 14:03:51 69365

一下用了這么多形容詞,就是怕你們找不到。Jackson 美化輸出JSON,優雅的輸出JSON數據,格式化輸出JSON數據

其實本站的第一個工具,也就是首頁的,就是JSON格式化輸出,但是增加了校驗功能,以及中文提示問題所在。比如如下  JSON  少了一個“,”。

好了,介紹完畢,開始走代碼吧。

Jackson 格式化輸出JSON 代碼說明(對象)

我們一般輸出就是普通的toString 輸出。如下代碼:

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

輸出結果:

{"name":"sojson","age":4,"domain":"http://www.380127.tw"}

非常不利于肉眼觀看,而且一大坨,如果是JSON很大的話,那么更難受。那么我們美化輸出呢?

美化/優雅/格式化輸出,代碼如下:

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

輸出結果:

{
  "name" : "sojson",
  "age" : 4,
  "domain" : "http://www.380127.tw"
}

是不是結果很nice?下面再看下字符串輸出。

Jackson 格式化輸出JSON 代碼說明(字符)

其實這里就是把字符串轉成對象(Object ),然后再輸出的。

優雅輸出 Java代碼:

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

輸出結果:

{
  "name" : "sojson",
  "age" : 4,
  "domain" : "http://www.380127.tw"
}

這里有的同學是不是想到,如果直接用上面的方法(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在線解析

原文地址:http://www.380127.tw/blog/245.html

轉載時必須以鏈接形式注明原始出處及本聲明。


附件下載:

備注:點擊文件名下載,附件源來自云端,只能在本站下載。復制下載鏈接無效。

本文主題:

如果本文對你有幫助,那么請你贊助我,讓我更有激情的寫下去,幫助更多的人。

關于作者
一個低調而悶騷的男人。
相關文章
Jackson 轉換JSON,SpringMVC ajax 輸出,當值為null或者空不輸出字段@JsonInclude
JSON數據格式,JSON格式化介紹,JSON格式介紹。
Java 文字轉圖片輸出,Java 輸出透明背景圖片,Java文字轉圖片防爬蟲
液廠JSON數據-來自云端數據
JSOUP 教程,JSOUP請求JSON ,JSOUP返回JSON 數據
Java tojson,Java中json-lib的各種數據轉換,及對象轉換
JSON格式講解,JSON獲取對象,JSONObject和JSONArray的操作
談談這次對 SOJSON 的改版
為什么很多第三方接口,都改成了基于http,直接傳遞json數據的方式來代替webservice?
GZIP壓縮JSON,JSON壓縮
最新文章
Autojs怎么安全加密?Autojs在線加密工具注意事項。 367
Java JSON 組件選型之 FastJson 為什么總有漏洞? 1842
使用七牛云存儲實現圖片API,自動刪除圖片方案合集 1667
神速ICP備案經驗分享,ICP備案居然一天就通過了 2662
百度加強推送URL鏈接,百度SEO強行推送鏈接JavaScript代碼案例講解。 3148
SOJSON 拓展服務器被DDos攻擊了一晚上,是如何解決的? 3659
湖南地區備案“新增網站需提交組網方案或解釋說明”,關于備案做簡單敘述 3691
企查查你是個什么企業,騙子的幫兇,詐騙的集中營,通過企查查騷擾企業電話不斷,為所欲為的企查查 10170
Java爬取百度云觀測對網站的檢測數據,獲取子域名及域名的安全信息 2666
【2020年】百度搜索詞獲取,獲取百度搜索的關鍵詞【真實有效】 8074
最熱文章
蘋果電腦Mac怎么恢復出廠系統?蘋果系統怎么重裝系統? 442066
我為什么要選擇RabbitMQ ,RabbitMQ簡介,各種MQ選型對比 422226
免費天氣API,全國天氣 JSON API接口,可以獲取五天的天氣預報 354111
最新MyEclipse8.5注冊碼,有效期到2020年 (已經更新) 324006
免費天氣API,天氣JSON API,不限次數獲取十五天的天氣預報 296041
Elasticsearch教程(四) elasticsearch head 插件安裝和使用 226688
Jackson 時間格式化,時間注解 @JsonFormat 用法、時差問題說明 186814
談談斐訊路由器劫持,你用斐訊路由器,你需要知道的事情 138553
Elasticsearch教程(一),全程直播(小白級別) 121759
Elasticsearch教程(五) elasticsearch Mapping的創建 100607

騷碼加入我們 / 千人QQ群:259217951

入群需要5元為的是沒有垃圾廣告,如果沒有QQ錢包,可以加群主拉進。

二維碼生成 來自 >> 二維碼生成器。

支付掃碼

所有贊助/開支都講公開明細,用于網站維護:贊助名單查看

查看我的收藏

正在加載... ...

时时乐上海走势图连线