Gson과 Jasckson 는 둘 다 Java 객체를 JSON을 표현으로 변환할 수 있도록 사용하는 라이브러리이다
Java 객체 -> JSON : 직렬화 (Serialize)
JSON -> Java객체 : 역직렬화 (Desrialize)
간단히 정의하자면 이렇지만 상세한 내용은 따로 정리 해보도록 하자 (중요한 개념이므로)
여기서 JSON이란?!
- JavaScript Object Notation의 약자로 key : value 값으로 데이터를 통신하는 표현 방법이다
- 데이터를 표현 하는 방식은 XML과 JSON 유형 주로 두가지가 있지만 특정 언어에 구애받지 않으며 간단한 데이터
표현 방식을 사용하는 JSON 형태의 표현방식을 많이 쓴다.
• Gson 이란?
- Google에서 만든 Java 객체와 JSON의 표현을 바꿀 수 있는 라이브러리
Gson gson = new Gson();
1) 직렬화
Object obj = new Object();
String json = gson.toJson(obj); => Object가 JSON 형태의 String으로 직렬화되어 반환
2) 역직렬화
Object obj = gson.fromJson(json,Object.class ); => JSON형태의 String 변수가 Object.class 형태로 역직렬화되어 반환
• Jackson 이란?
- 자바용 Json 라이브러이지마 Json뿐만 아니라 xml,ymal등 다양한 형식의 데이터를 지원하는 라이브러리이다
ObjectMapper mapper = new ObjectMapper();
사용법
클래스명 인스턴스변수 = mapper.readValue(new 객체, JSON형태가 변환될 클래스명.class);
클래스명 인스턴스변수 = mapper.readValue(string , JSON형태가 변환될 클래스명.class); // String으로 읽기
String jsonString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(Object);
참조 : https://www.lesstif.com/java/java-json-library-jackson-24445183.html
'JAVA' 카테고리의 다른 글
이메일 보내기 (SMTP 방식) (0) | 2022.04.03 |
---|---|
Retrofit2 (Java) (0) | 2022.04.02 |
Optional 클래스 (0) | 2021.07.14 |
일급 컬렉션 (First Class Collection) (0) | 2021.07.13 |
컬렉션 프레임워크 (0) | 2021.07.10 |