Jackson ObjectMapper ์ ๋ฆฌ
<aside>
๐ก Jackson ObjectMapper
</aside>
<aside>
๐ก JSON ์ปจํ
์ธ ๋ฅผ Java ๊ฐ์ฒด๋ก deserialization ํ๊ฑฐ๋ Java ๊ฐ์ฒด๋ฅผ JSON์ผ๋ก serialization ํ ๋ ์ฌ์ฉํ๋ Jackson ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํด๋์ค
</aside>
Java Object = Serialize=> JSON
- ์ง๋ ฌํ ์ํฌ ๊ฐ์ฒด์ **
Getter ๋๋ Setter**๊ฐ ์กด์ฌํด์ผํจ
- Jackson ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ Getter์ Setter๋ฅผ ์ด์ฉํด์ prefix๋ฅผ ์๋ผ๋ด๊ณ ๋งจ ์์ ์๋ฌธ์๋ก ๋ง๋ค์ด ์๋ณํ๊ธฐ ๋๋ฌธ์.
ObjectMapper objectMapper = new ObjectMapper();
User user = new User("asdf",25);
try {
objectMapper.writeValue(new File("src/user.json"), user);
} catch (IOException e) {
e.printStackTrace();
}
- user.json์ด๋ผ๋ ํ์ผ์ด ์๊ธฐ๊ณ json ํ์์ผ๋ก ๋ค์ด๊ฐ๋ค.
JSON = Deserialize=> Java Object
- ์ญ์ง๋ ฌํ ์ํฌ ํด๋์ค์๋ JSON์ ํ์ฑํ ๊ฒฐ๊ณผ๋ฅผ ์ ๋ฌํ ์์ฑ์๊ฐ ํ์
try {
User deserializedUser = objectMapper.readValue(json, User.class);
} catch (JsonProcessingException e){
e.printStackTrace();
}
Convert Json โ Jackson JsonNode
- ํด๋ก๋ฐ api๋ฅผ ํตํด ๋ฐ์์จ ๋ฐ์ดํฐ ๋ถ์์ผ๋ก ์ฌ์ฉํ์์.
- JAVA ๋ฐ์ดํฐ๋ก ๋ณ๊ฒฝํ ํ์๋ ์๊ณ ๋จ์ง json์ ์ฝ๊ธฐ๋ง ํ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ํธ๋ฆฌํ๋ค.
- ๋ํ ํด๋ก๋ฐ๋ฅผ ํตํด ๋ฐ์ json ๋ฐ์ดํฐ๋ ๊ฝค ์ง์ ๋ถํ ํธ. inferText๋ง ์ถ์ถํ๊ธฐ ์ํด ์ ๋ฆฌํ์
JsonNode jsonNode = objectMapper.readTree(json);