반응형
<element와 accumulate 차이점>
두 개다 name(key)와 value로 데이터를 넣어주는 형식이다.
사용 방식은 같으나
accumulate는 같은 key가 들어왔을 때 배열 식으로 계속해서 value를 붙여주는 형식을 띄고
element는 같은 key가 들어왔을 때 value를 이전 value에 덮여씌워 주는 형식이다.
ex)
소스:
JSONdata data1 = new JSONdata("data1");
JSONdata data2 = new JSONdata("data2");
JSONdata data3 = new JSONdata("data3");
JSONdata data4 = new JSONdata("data4");
//값 추가
jsonByDTO.accumulate("ticketIDList", data1);
jsonByDTO.accumulate("ticketIDList", data2);
jsonByDTO.element("ticketIDList1", data3);
jsonByDTO.element("ticketIDList1", data4);
logger.info("DTO 사용: " + jsonByDTO.toString());
결과화면:
INFO : kr.co.mcom.JSONController - DTO 사용: {"ticketIDList":[{"ticketID":"data1"},{"ticketID":"data2"}],"ticketIDList1":{"ticketID":"data4"}}
결과화면을 보면 ticketIDList에 accumulate를 사용한 것을 볼 수 있는데, 중복된 key값을 사용했을 경우 배열로 결과가 나오는 것을 확인 할 수 있다. 하지만 element를 사용했을 때, 중복된 key값을 사용한 경우 마지막에 대입한 value가 들어가 있는 것을 볼 수 있다.
'프로그래밍 > 자바' 카테고리의 다른 글
Java - StringBuilder 사용하기 (0) | 2015.08.08 |
---|---|
OutputStream flush의 역할 (0) | 2013.12.07 |
[Java] WeakReference 와 SoftReference 의 차이점. (0) | 2013.12.05 |
[java] WeakReference 와 SoftReference (0) | 2013.12.05 |
Enumeration 클래스와 ListIterator 클래스 (0) | 2012.08.13 |