Android 에서 주로 사용하는 JSON 라이브러리는 GSON이다.
하지만 XML을 JSON으로 변환하여 사용하는 번거로움 + JSON to Class Convert 으로 검색을 하다보니, Spring Boot 에서는 Jackson을 기본으로 사용하여 2개의 차이를 확인 해보았다.
결론 부터 말하면 Jackson이 GSON 상위 호환 이다.
심지어 대용량 데이터 처리 부분에서는 Jackson이 우위이다.
공통점
- 직렬화(Serialization) / 역직렬화(Deserialization) 지원
- Apach 2.0 라이센스
차이점
Jackson
Gson
- Google에서 지원 관리하는 오픈 라이브러리
- 변환 지원 Type
현실
- Android 에서 Jackson 사용 시 아래와 같은 이슈가 발생함
- javax.xml.stream.XMLStreamReader 을 찾지 못함
- 'javax.xml.stream:stax-api:1.0-2’ 을 추가해서 해결은 가능함
- org.json.XML 에서는 지원하는 <itemName /> 형식을 지원하지 않음
오직 <itmeName> itemContents </itemName> 형식만 지원함
참고 Link