最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java實現(xiàn)JSON字符串格式化輸出

 更新時間:2024年01月09日 09:33:30   作者:愛碼少年  
這篇文章主要為大家詳細介紹了如何使用java實現(xiàn)JSON字符串格式化輸出,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以了解下

一、JSON 字符串格式化輸出

json字符串格式化輸出fastjson、gson、jackson實現(xiàn)

import org.junit.jupiter.api.Test;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonObject;
import com.google.gson.JsonParser;

import lombok.extern.slf4j.Slf4j;

/**
 * Json字符串格式化
 */
@Slf4j
public class JsonPrettyFormat
{
    private String jsonString =
        "{\"_index\":\"book_shop\",\"_type\":\"it_book\",\"_id\":\"1\",\"_score\":1.0, \"_source\":{\"name\": \"Java編程思想(第4版)\",\"author\": \"[美] Bruce Eckel\",\"category\": \"編程語言\", \"price\": 109.0,\"publisher\": \"機械工業(yè)出版社\",\"date\": \"2007-06-01\",\"tags\": [ \"Java\", \"編程語言\" ]}}";
    
    @Test
    public void fastjsonTest()
    {
        JSONObject object = JSONObject.parseObject(jsonString);
        String pretty = JSON.toJSONString(object, SerializerFeature.PrettyFormat, SerializerFeature.WriteMapNullValue, SerializerFeature.WriteDateUseDateFormat);
        log.info("{} ", pretty);
    }
    
    @Test
    public void gsonTest()
    {
        JsonObject jsonObject = JsonParser.parseString(jsonString).getAsJsonObject();
        Gson gson = new GsonBuilder().setPrettyPrinting().create();
        String pretty = gson.toJson(jsonObject);
        log.info("{} ", pretty);
    }
    
    @Test
    public void jacksonTest()
        throws JsonMappingException, JsonProcessingException
    {
        ObjectMapper mapper = new ObjectMapper();
        Object obj = mapper.readValue(jsonString, Object.class);
        String pretty = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(obj);
        log.info("{} ", pretty);
        
        JsonNode jsonNode = mapper.readTree(jsonString);
        pretty = jsonNode.toPrettyString();
        log.info("{} ", pretty);
    }
}

二、運行結果

2023-12-19 17:26:19.704  INFO 21640 --- [           main] c.f.t.r.j.JsonPrettyFormat               : {
    "_index":"book_shop",
    "_type":"it_book",
    "_source":{
        "date":"2007-06-01",
        "author":"[美] Bruce Eckel",
        "price":109.0,
        "name":"Java編程思想(第4版)",
        "publisher":"機械工業(yè)出版社",
        "category":"編程語言",
        "tags":[
            "Java",
            "編程語言"
        ]
    },
    "_id":"1",
    "_score":1.0

2023-12-19 17:26:19.744  INFO 21640 --- [           main] c.f.t.r.j.JsonPrettyFormat               : {
  "_index": "book_shop",
  "_type": "it_book",
  "_id": "1",
  "_score": 1.0,
  "_source": {
    "name": "Java編程思想(第4版)",
    "author": "[美] Bruce Eckel",
    "category": "編程語言",
    "price": 109.0,
    "publisher": "機械工業(yè)出版社",
    "date": "2007-06-01",
    "tags": [
      "Java",
      "編程語言"
    ]
  }

2023-12-19 17:26:19.991  INFO 21640 --- [           main] c.f.t.r.j.JsonPrettyFormat               : {
  "_index" : "book_shop",
  "_type" : "it_book",
  "_id" : "1",
  "_score" : 1.0,
  "_source" : {
    "name" : "Java編程思想(第4版)",
    "author" : "[美] Bruce Eckel",
    "category" : "編程語言",
    "price" : 109.0,
    "publisher" : "機械工業(yè)出版社",
    "date" : "2007-06-01",
    "tags" : [ "Java", "編程語言" ]
  }

2023-12-19 17:26:19.999  INFO 21640 --- [           main] c.f.t.r.j.JsonPrettyFormat               : {
  "_index" : "book_shop",
  "_type" : "it_book",
  "_id" : "1",
  "_score" : 1.0,
  "_source" : {
    "name" : "Java編程思想(第4版)",
    "author" : "[美] Bruce Eckel",
    "category" : "編程語言",
    "price" : 109.0,
    "publisher" : "機械工業(yè)出版社",
    "date" : "2007-06-01",
    "tags" : [ "Java", "編程語言" ]
  }

三、源碼傳送

https://gitee.com/00fly/effict-side/blob/master/springboot-cache/src/test/java/com/fly/test/restful/json/JsonPrettyFormat.java

到此這篇關于java實現(xiàn)JSON字符串格式化輸出的文章就介紹到這了,更多相關java JSON字符串格式化輸出內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • MyBatis?SqlSession執(zhí)行流程小結

    MyBatis?SqlSession執(zhí)行流程小結

    本文主要介紹了MyBatis?SqlSession執(zhí)行流程小結,涵蓋動態(tài)代理、Executor、StatementHandler等組件,及參數(shù)處理、結果映射與緩存機制,感興趣的可以了解一下
    2025-05-05
  • 在Java中輕松將HTML格式文本轉換為純文本的方法示例(保留換行)

    在Java中輕松將HTML格式文本轉換為純文本的方法示例(保留換行)

    這篇文章主要介紹了在Java中輕松將HTML格式文本轉換為純文本的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • JAVA實現(xiàn)Date日期加一天具體方法

    JAVA實現(xiàn)Date日期加一天具體方法

    這篇文章主要給大家介紹了關于JAVA實現(xiàn)Date日期加一天的相關資料,因為在項目中遇到了需要將日期進行加減一些天數(shù)的操作,文中給出了簡單的代碼示例,需要的朋友可以參考下
    2023-07-07
  • Java連接六類數(shù)據(jù)庫技巧全攻略

    Java連接六類數(shù)據(jù)庫技巧全攻略

    本文主要為大家介紹了Java與Oracle、DB2、Sql Server、Sybase、MySQL、PostgreSQL等數(shù)據(jù)庫連接的方法。
    2015-09-09
  • mybatis Reflector反射類的具體使用

    mybatis Reflector反射類的具體使用

    Reflector類是MyBatis反射模塊的核心,負責處理類的元數(shù)據(jù),以實現(xiàn)屬性與數(shù)據(jù)庫字段之間靈活映射的功能,本文主要介紹了mybatis Reflector反射類的具體使用,感興趣的可以了解一下
    2024-02-02
  • Java實現(xiàn)將漢字轉化為漢語拼音的方法

    Java實現(xiàn)將漢字轉化為漢語拼音的方法

    這篇文章主要介紹了Java實現(xiàn)將漢字轉化為漢語拼音的方法,實例演示了Java引用pinyin4j庫實現(xiàn)漢子轉化成拼音的使用技巧,需要的朋友可以參考下
    2015-12-12
  • Java HashMap源碼深入分析講解

    Java HashMap源碼深入分析講解

    在java開發(fā)中,HashMap是最常用、最常見的集合容器類之一,下面一起溫故一下,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • Spring事務annotation原理詳解

    Spring事務annotation原理詳解

    這篇文章主要介紹了Spring事務annotation原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 如何解決@Data和@Builder的沖突問題

    如何解決@Data和@Builder的沖突問題

    在使用@Data和@Builder注解時,可能會導致無法使用無參構造方法創(chuàng)建實體類實例的問題,本文提出了兩種解決方法:一是手動添加無參構造并使用@Tolerate注解兼容;二是同時添加@AllArgsConstructor和@NoArgsConstructor注解,既添加無參構造也添加全參構造
    2024-10-10
  • 深入理解Java虛擬機_動力節(jié)點Java學院整理

    深入理解Java虛擬機_動力節(jié)點Java學院整理

    虛擬機是一種抽象化的計算機,通過在實際的計算機上模擬各種計算機功能來實現(xiàn)的,下面通過本文給大家分享Java虛擬機相關知識,感興趣的朋友一起看看吧
    2017-06-06

最新評論

建阳市| 麻江县| 岚皋县| 徐闻县| 青冈县| 南通市| 拜泉县| 平潭县| 镇赉县| 泗阳县| 镶黄旗| 青冈县| 白水县| 墨江| 深州市| 肃北| 灯塔市| 曲麻莱县| 金华市| 贵南县| 体育| 乌鲁木齐县| 泸定县| 东阳市| 富平县| 六安市| 博湖县| 桦南县| 洱源县| 柳林县| 望城县| 嘉峪关市| 班玛县| 鹰潭市| 清水县| 绥中县| 新乡县| 浮山县| 栾川县| 石屏县| 深泽县|