티스토리 뷰
API 서버를 개발하다보면 아래와 같이 간단한 JSON 타입을 Response 값으로 반환해야 하는 경우가 종종 생긴다.
{ "success" : true, "id" : 1024,
"status": { "method" : "get", "code" : 202 } }"items" : [0,7,9,12],
만약 위 값이 일회성이라고 가정할 때, GSON 같은 도구를 사용하기 위하여 객체로 만들거나 스트링을 사용해서 이어 붙이기에는 구현하기가 복잡하거나 귀찮아 지는 경우가 종종 발생한다.
그래서 이런 귀찮은 작업들을 간단하게 줄여주는 코드를 만들었고, 공유한다.
JsonMaker.java 파일을 만들고 아래 주소에 있는 코드를 붙여넣기 하여 사용할 수 있다.
https://gist.github.com/ice3x2/0e73d96c5c6724116f5f
이 것을 활용한다면, 위 JSON 타입을 간단하게 만들 수 있다.
String jsonValue = JsonMaker.put("success", true).put("id", 1024) .openArray("items").next(0).next(7).next(9).next(12).closeArray() .openObject("status") .put("method", "get") .put("code", 202) .closeObject().toString();
단, 주의사항은(단점) toString() 을 호출하는 순간 내부적으로 생성된 JSON 데이터 리스트가 모두 초기화 되어버린다.
이렇게 한 이유는 메모리 누수를 방지하기 위해서인데, 더 좋은 방법을 고민해보고 개선된 버전이 생기면 업데이트 하겠다.
'개발 관련 > 개인 자료' 카테고리의 다른 글
테스트 진행시 Private 메소드 호출하기. (0) | 2015.04.29 |
---|---|
안드로이드에서 현재 Task 에 있는 Activity 인스턴스 가져오기. (0) | 2014.07.13 |
안드로이드에서 시리얼 블루투스 디바이스 통신을 쉽게 하기 위한 클라이언트 클래스. (5) | 2014.06.22 |
[Java] 간단한 랜덤 문자열 만드는 클래스. (0) | 2013.08.02 |
- Total
- Today
- Yesterday
- 침블락
- ndk
- ATtiny85
- oled
- Android
- Cheapduino
- 개발
- activity
- noidemcu
- Iot
- 아두이노
- 이더넷
- ESP8266
- WS2812B
- 칩두이노
- 알리익스프레스
- 스마트 무드등
- NeoPixel
- 안드로이드
- 블루투스
- 가습기
- ENC28J60
- HC-06
- json
- arduino
- 부트로더
- bluetooth
- Java
- 안드로이드 개발
- 병렬 프로그래밍
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |