728x90
Jackson에서 제공하는 클래스이고, Java 클래스 내용을 확인하거나 파싱하는 과정에서
Object를 Json으로 변환하거나 Json을 Object로 변환할 때 사용한다고 한다.
Dependency 추가
<artifactId>jackson-databind</artifactId>
Object ➡️ Json
ObjectMapper objectMapper = new ObjectMapper();
User user = new User("meanji", 100);
objectMapper.writeValue(new File("user.json"), user);
String userAsString = objectMapper.writeValueAsString(user);
Json ➡️ Object
String json = "{ \"name\" : \"meanji\", \"age\" : 100 }";
User user = objectMapper.readValue (json, User.class);
Json ➡️ Jackson JsonNode
String json = "{ \"name\" : \"meanji\", \"age\" : 100 }";
JsonNode jsonNode = objectMapper.readTree(json);
String name = jsonNode.get("name").asText();
int age = jsonNode.get("age").asInt();
Json Array String ➡️ Java List
String jsonArr = "[{\"name\":\meanji\",\"age\":30},{\"name\":\"Jason\",\"age\":20}]";
List<User> user = objectMapper.readValue(jsonArr, new TypeReference<>() {});
Json String ➡️ Java Map
String jsonArr = "{\"name\":\"Ryan\",\"age\":30}";
Map<String, Object> user = objectMapper.readValue(jsonArr, new TypeReference<>() {});
Reference
728x90
'Java' 카테고리의 다른 글
[Java] 리플렉션 공부 (0) | 2022.10.25 |
---|---|
@PostConstruct, @PreDestroy (0) | 2022.08.24 |
UnrecognizedPropertyException (0) | 2022.08.23 |
JsonNode to Object (0) | 2022.08.23 |
mac 자바 8 설치 (0) | 2022.08.19 |