麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

Jackson如何使JSON輸出變得優雅?

2019-11-14 15:40:08
字體:
來源:轉載
供稿:網友

本篇文章翻譯自:How to enable PRetty print JSON output (Jackson)

在這篇文章中,我們將教你如何利用Jackson Library在控制臺或者jsp頁面優雅地輸出JSON Object和JSON String。

 

1、優雅地輸出JSON Object

下面是一個將Object利用Jackson轉換為JSON String的例子。

User user = new User();ObjectMapper mapper = new ObjectMapper();System.out.println(mapper.writeValueAsString(user));

但是輸出結果確實非常緊湊的,一點兒都不美觀。

為了能使他優雅地打印,使用ObjectMapper類的writerWithDefaultPrettyPrinter()方法。

ObjectMapper mapper = new ObjectMapper();System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(user));

結果(是不是優雅多了):

{  "age" : 29,  "messages" : [ "msg 1", "msg 2", "msg 3" ],  "name" : "mkyong"}

 

2、優雅地輸出JSON String

這有一點點的棘手,再次使用ObjectMapper類的writerWithDefaultPrettyPrinter()方法。

String test = "{/"age/":29,/"messages/":[/"msg 1/",/"msg 2/",/"msg 3/"],/"name/":/"mkyong/"}";System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(test));

上面代碼運行后,我們發現他打印格式還是緊湊的,并不是我們想要的優雅類型。

"{/"age/":29,/"messages/":[/"msg 1/",/"msg 2/",/"msg 3/"],/"name/":/"mkyong/"}"

為了解決這問題,我們需要先將JSON String變成JSON Object,然后再利用 [1] 描述的方法,進行優雅地輸出。

String test = "{/"age/":29,/"messages/":[/"msg 1/",/"msg 2/",/"msg 3/"],/"name/":/"mkyong/"}";Object json = mapper.readValue(test, Object.class);System.out.println(mapper.writerWithDefaultPrettyPrinter().writeValueAsString(json));

輸出結果:

{  "age" : 29,  "messages" : [ "msg 1", "msg 2", "msg 3" ],  "name" : "mkyong"}

 

3、在JSP頁面優雅地輸出JSON String

@Controller@RequestMapping("/anything")public class AdminController {  @RequestMapping(method = RequestMethod.GET)  public ModelAndView index() {    String test = "{/"age/":29,/"messages/":[/"msg 1/",/"msg 2/",/"msg 3/"],/"name/":/"mkyong/"}";    Object json = mapper.readValue(test, Object.class);            ModelAndView modelandView = new ModelAndView("viewname");    modelandView.addObject("output", mapper.writerWithDefaultPrettyPrinter().writeValueAsString(json));        return modelandViewl;  }}

 

在JSP頁面里面,使用: <pre>${output}</pre> 

Note: 本文使用writerWithDefaultPrettyPrinter(),老一套的defaultPrettyPrintingWriter()已經deprecated。

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲综合精品 | 国产一国产一级毛片视频在线 | wwwcom国产 | 成人爽a毛片免费啪啪红桃视频 | 九九看片 | 亚洲视频综合 | 国产精品自拍啪啪 | 性生活视频一级 | 免费一级毛片免费播放 | 久久精品久 | 久久久久久久久久久久久久av | 欧美视频一区二区三区 | 偿还的影视高清在线观看 | 日韩视频一二三 | 毛片免费视频播放 | 毛片大全免费看 | 一级黄色性感片 | 亚洲成人播放 | 欧美一级毛片美99毛片 | 99在线免费观看视频 | 91一级毛片 | 国产午夜亚洲精品理论片大丰影院 | 国产精品久久久久久久久久久久久久久 | 国产精品久久久久久久午夜片 | 91网址在线播放 | 91午夜免费视频 | 成人午夜亚洲 | 欧美a在线 | 爱逼爱操综合网 | 久久精品re| 久久色播 | 国产高潮好爽好大受不了了 | 精品国产一区二区三区四区在线 | 欧日一级片 | 最新av在线免费观看 | 精品亚洲夜色av98在线观看 | 免费观看一区 | 在线a| 激情宗合| 最新91在线视频 | 天天鲁在线视频免费观看 |