programing

Linked Tree Map을 gson Json Object로 변환하는 방법

megabox 2023. 3. 10. 21:23
반응형

Linked Tree Map을 gson Json Object로 변환하는 방법

Java 데이터 핸들러에서는 적절한 포맷의 JSON을 송신합니다만, Spring, Java, 프레임워크의 조합에 의해서, JSON이 표시되는 대로, Linked Tree Map이 되어, JSON을 JSON 오브젝트로 변환할 필요가 있습니다.이는 JSON을 java 오브젝트로 시리얼화/디시리얼라이즈하기 위한 것이 아닙니다.최종 폼은 gson Json Object이며 문자 그대로 유효한 JSON을 처리할 수 있어야 합니다.

{
"key":"value",
"object": {
    "array":[
        "value1", 
        "please work"
        ]
    }
}

사용하고 있는 샘플입니다.이 샘플이 확인되면 Linked Tree Map으로 .toString()은 이 샘플에 접속합니다.

{key=value, object={array=[value1, please work]}}

여기서 "="를 ":"로 대체할 수 있지만, 내부 인용문은 없습니다.

new JsonParser().parse(gson.toJson(STRING)).getAsJsonObject()

전략.

LinkedTreeMap을 JsonObject로 변환하거나 내부 따옴표를 문자열에 추가하는 라이브러리 또는 스팅을 내부 따옴표가 필요 없는 JsonObject로 변환하는 보다 직접적인 방법이 있습니까?

일반적으로 오브젝트를 JSON으로 시리얼화한 후 해당 JSON을 해석하여JsonObject.다행히도.Gson는 해석을 생략하는 방법을 제공합니다.

LinkedTreeMap<?,?> yourMap = ...;
JsonObject jsonObject = gson.toJsonTree(yourMap).getAsJsonObject();

가능하면 JSON을 직접 디시리얼라이즈하여JsonObject와 함께

gson.fromJson(theJson, JsonObject.class);

언급URL : https://stackoverflow.com/questions/38057172/how-do-i-convert-a-linkedtreemap-to-gson-jsonobject

반응형