티스토리 뷰

스프링으로 웹 서버를 개발하다보면 json으로 데이터를 내려줘야 하는 경우가 생긴다.

이때 Jackson이나 Gson을 통해 java에 대한 JSON 데이터 바인딩을 지원받을 수 있다.

원래는 SimpleJSON을 사용했었는데 코드가 너무 지저분하고 길어져서, 이번 기회에 둘 중 한 라이브러리를 제대로 익혀두려고 한다.


 

1. Jackson

스프링 프레임워크에 내장되어있다.

 

  • 직렬화(Java 객체 -> JSON)
1
2
3
ObjectMapper mapper = new ObjectMapper(); 
String jsonResult = mapper.writeValueAsString(json으로 바꾸고싶은 java객체);
 
cs

 

 

  • 역직렬화(JSON -> Java 객체)
1
2
3
4
String jsonInput = "json 데이터";
ObjectMapper mapper = new ObjectMapper();
Example exam = mapper.readValue(jsonInput, Example.class);
 
cs

 

 

2. Gson

스프링 프레임워크에 내장되어있지 않기 때문에 build.gradle에 추가해줘야 한다.

(Maven을 사용한다면 pom.xml에 추가)

 

1
dependencies { compile group: 'com.google.code.gson', name: 'gson', version: '2.8.2' }
cs

 

  • 직렬화 (Java 객체 -> JSON)
1
String jsonResult = new Gson().toJson(json으로 바꾸고싶은 java객체);
cs

 

 

  • 역직렬화 (JSON -> Java 객체)
1
2
3
String jsonInput = "json 데이터";
Example exam = new Gson().fromJson(jsonInput, Example.class);
 
cs

 


출처

- https://h-kkaemi.tistory.com/2

 

Jackson과 Gson 라이브러리의 차이

Jackson과 Gson 모두 Java에 대한 JSON 데이터 바인딩 지원을 제공하는 완전한 라이브러리입니다. Jackson은 Spring 프레임 워크에 내장되어있지만 Gson은 pom.xml에 따로 추가해 줘야 한다. com.google.code.gson..

h-kkaemi.tistory.com

- https://jinseongsoft.tistory.com/144

 

[Java] Gson 라이브러리 적용 및 기본 사용법

 이번 시간에는 Gson 라이브러리를 적용해보고 간단하게 사용해보는 방법에 대해서 알아보겠습니다. Gson이란?  Gson의 정의는 아래와 같습니다. Gson(구글 Gson, Google Gson)은 JSON의 자바 오브젝트의

jinseongsoft.tistory.com

 

'Web' 카테고리의 다른 글

JPQL getResultList()과 getSingleResult()  (0) 2021.10.12
ControllerAdvice와 ExceptionHandler로 예외처리  (0) 2021.09.13
JPA에서 데이터 접근  (0) 2021.09.09
JPA, ORM, Hibernate, JPQL  (0) 2021.09.09
Apache Tomcat과 Apache  (0) 2021.08.14
Comments