๐Ÿ”™๋’ค๋กœ๊ฐ€๊ธฐ

๊ธฐ๋Šฅ

**@RequestBody**๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด, ์Šคํ”„๋ง์€ HTTP ์š”์ฒญ ๋ณธ๋ฌธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ Java ๊ฐ์ฒด๋กœ ๋ณ€ํ™˜(์—ญ์ง๋ ฌํ™”)ํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค. ์ด๋•Œ, ๋ณ€ํ™˜์„ ์œ„ํ•ด HttpMessageConverter ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ตฌํ˜„์ฒด๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, JSON ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Jackson ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ **MappingJackson2HttpMessageConverter**๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค.

@PostMapping("/users")
public ResponseEntity<User> createUser(@RequestBody User user) {
    // ์‚ฌ์šฉ์ž ์ƒ์„ฑ ๋กœ์ง ์ˆ˜ํ–‰
    User createdUser = userService.createUser(user);
    return new ResponseEntity<>(createdUser, HttpStatus.CREATED);
}

์œ„์˜ ์ฝ”๋“œ์—์„œ **@RequestBody User user**๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ „๋‹ฌํ•œ JSON ํ˜•์‹์˜ ์š”์ฒญ ๋ณธ๋ฌธ ๋ฐ์ดํ„ฐ๋ฅผ User ๊ฐ์ฒด๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ปจํŠธ๋กค๋Ÿฌ ๋ฉ”์†Œ๋“œ์˜ ์ธ์ž๋กœ ์ „๋‹ฌํ•˜๊ณ  ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ „์†กํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„œ๋ฒ„ ์ธก ๋กœ์ง์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

์š”์ฒญ ๋ณธ๋ฌธ ์ฒ˜๋ฆฌ๋Š” ์ฃผ๋กœ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋ฉฐ, ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ํ†ต์‹ ์„ ์œ„ํ•œ ๊ธฐ๋Šฅ์ด๋‹ค.