직렬화란 객체를 전송가능한 형태로 말아주는걸 의미 (java object to json)
역직렬화란 그 데이터들을 다시 자바 객체로 변환해주는 걸 의미 (json to java object)
java object to json
ObjectMapper mapper = new ObjectMapper();
String json = mapper.writeValueAsString(data); // java Object -> String
jsonNode = mapper.readTree(json); // String -> jsonNode
json to java object
JsonResponse response = doPost(request);
JsonNode getResData = response.getResponseBodyAsJson();
ObjectMapper mapper = new ObjectMapper();
String jsonString = mapper.writeValueAsString(data); // json -> String
postCjmallQnaList = mapper.readValue(jsonString,class); // String -> java Object
Dependencies jackson-databind
maven
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.11.0</version>
</dependency>
gradle
mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind
compile group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.11.0'
참고 블로그
-. pjh3749.tistory.com/281
-. soulduse.tistory.com/22
'언어 > java' 카테고리의 다른 글
[모던자바 인액션]#2 동작 파라미터화 코드 전달 (0) | 2021.01.13 |
---|---|
[모던자바 인액션]#3 람다 표현식 (0) | 2021.01.13 |
[모던자바 인액션]#4 스트림 소개 (0) | 2021.01.13 |
[JAVA] String으로 입력된 날짜의 차이 구하기 (0) | 2019.10.25 |
[날짜 차이] 현재 날짜와 특정 날짜 지났는지 check (0) | 2019.05.28 |