2016-02-09 26 views
0

我有這樣的代碼:如何將漂亮的json格式嵌入到html靜態頁面?

public <T> String toJson(T item) 
    { 
     String json; 
     ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter(); 
     try { 
      json = ow.writeValueAsString(item); 
     } catch (IOException e) { 
      e.printStackTrace(); 
      json = ""; 
     } 
     return json; 
    } 

我建立一個靜態的HTML頁面形成服務器端(使用gagawa):

java.util.Map<String, String> paramsMap = filterInterestingQueryParams(url); 

    Li li4 = new Li().appendText("special params: " + jsonParser.toJson(paramsMap)); 

,但我的HTML看起來壞了。

你會如何將這張地圖美化成html?

*有沒有辦法通過#chars限制行內容? *一種堅持漂亮打印的方法?

enter image description here

+0

關於HTML有什麼問題? –

+0

行太長 –

回答

2

最簡單的方法是將一些CSS添加到您的網頁:

li.wrap { 
 
    word-wrap:break-word; 
 
}
<ul> 
 
<li>Really long special params: {stickToPath=8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,}</li> 
 
<li class="wrap">Really long special params (that wraps): {stickToPath=8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,8484.20202002,-481737.45454,}</li> 
 
</ul>

正如你所看到的,第二liwrap類包裝在框架邊緣,而其他沒有。


如果您需要的JSON是相當打印您需要修改輸出HTML,敷在JSON標籤<pre>。默認情況下,這些將保留換行符和空格。

+0

謝謝。順便說一句,有沒有一種方法來保存JSON漂亮的打印? –

+0

不能不改變輸出代碼。 –

+0

看我上面的編輯。 –