2017-01-19 6 views
-2

나는 사용자 정의 JSON 출력 예에 Map<String,String>을 변환 할 : 내지도 밖으로 사용자 지정 키를지도 위에 넣을한다지도 <String, String>을 (를) 사용자 지정 JSON 형식으로 변환하는 방법?

-------- 
ID |Desc 
-------- 
1 | A 
2 | B 
3 | C 

내 JSON과 같은 데이터를하여 예 ID & 내용 : 이전 I

[{id:1,desc,A},{id:2,desc,B},{id:3,desc,C}] 

List를 사용하여 객체 클래스를 사용하여 Json으로 변환 :

List<CustomObject> myList = new ArrayList<>(); 

ObjectMapper mapper = new ObjectMapper(); 
String jsonText = mapper.writeValueAsString(myList); 

내가 CustomObject 클래스에서 가지고있는 필드를 변환합니다. 그러나 Map에는 키/값과 필드 이름이 없으므로 설정할 수있는 방법을 알아야합니다.

+2

몇 가지 코드를 작성 즐길? 그것은 좋은 출발이 될 것입니다. 이 작업을 수행 할 라이브러리를 찾고 있다면이 사이트에서 [off topic] (https://stackoverflow.com/help/on-topic)입니다. 우리가 당신을 위해 몇 가지 코드를 작성하기를 원한다면 그것은 역시 그렇습니다. 몇 가지 조사를 해보고 해결책을 찾은 다음 솔루션이 작동하지 않으면 여기로 돌아와 도움을 요청하십시오. 귀하의 노력은 [** more more **] (http://meta.stackoverflow.com/a/261593/2071828)입니다. 훨씬 더. –

+0

코드 사용 중 질문이 업데이트되었습니다. \t org.codehaus.jackson \t \t \t 잭슨-jaxrs LIB 지금 – usman

+0

을 사용하는 경우, 당신은 "잭슨은'지도'를 직렬화"인터넷에이 사이트 및 튜토리얼에 몇 가지 답변을 통과 구글 수 있습니다. **조사 좀 해봐**. –

답변

0

최적화 및

//******************************************************************* 
// NOTE: please read the 'More Info' tab to the right for shortcuts. 
//******************************************************************* 

import java.lang.Math; // headers MUST be above the first class 
import java.util.*; 

// one class needs to have a main() method 
public class MapToJson 
{ 
// arguments are passed using the text field below this editor 
public static void main(String[] args) 
{ 
    Map<String,String> map = new HashMap<>(); 
    map.put("1","A"); 
    map.put("2","B"); 
    map.put("3","C"); 

    final StringBuilder string = new StringBuilder("[");  


    map.forEach((k,v)->string.append("{id:"+k+",desc"+v+"},")); 


    string.append("]"); 


    System.out.println(string.toString()); 

    } 


} 
+0

ObjectMapper/Serializer로 작업하는 방법 – usman

+0

필요한 항목을 확인했지만 원본 게시물의 주석에 명시된 바와 같이 , 사용자 정의 코드를 작성해야합니다. –