Community

๐Ÿ•Š๏ธ ๋ฉด์ ‘์„ ์œ„ํ•œ ์Šคํ”„๋ง ๋ถ€ํŠธ ์–ด๋…ธํ…Œ์ด์…˜(2)

๋ฉด์ ‘์„ ์œ„ํ•œ ์Šคํ”„๋ง ๋ถ€ํŠธ ์–ด๋…ธํ…Œ์ด์…˜(1) - [https://careerly.co.kr/comments/95600] Data Handling Annotations * @RequestBody HTTP ์š”์ฒญ์—์„œ ๋ณธ๋ฌธ์„ ์ถ”์ถœํ•˜์—ฌ ์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ฉ”์„œ๋“œ ๋งค๊ฐœ ๋ณ€์ˆ˜์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค. JSON ๋˜๋Š” XML ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜์—ฌ Java ๊ฐ์ฒด๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. * @ResponseBody ๋ฉ”์„œ๋“œ์˜ ๋ฐ˜ํ™˜ ๊ฐ’์„ HTTP ์‘๋‹ต์— ๊ธฐ๋กํ•˜์—ฌ ์ ์ ˆํ•œ ํ˜•์‹์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Path Variable and Request Parameter Annoations * @PathVariable URL์˜ URI ๊ฒฝ๋กœ์—์„œ ๊ฐ’์„ ์ถ”์ถœํ•˜๊ณ  ์ด ๊ฐ’์„ ์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ฉ”์„œ๋“œ ๋งค๊ฐœ ๋ณ€์ˆ˜์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค. * @RequestParam ์š”์ฒญ์˜ URL์—์„œ ์ฟผ๋ฆฌ ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ถ”์ถœํ•˜๊ณ  ์ด ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ์ปจํŠธ๋กค๋Ÿฌ์˜ ๋ฉ”์„œ๋“œ ๋งค๊ฐœ ๋ณ€์ˆ˜์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค. Exception Handling Annoations * @Exception Handler ํŠน์ • ์˜ˆ์™ธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•˜๊ณ  ํ•ด๋‹น ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ ์‚ฌ์šฉ์ž ์ง€์ • ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. * @RestControllerAdvice ์—ฌ๋Ÿฌ ์ปจํŠธ๋กค๋Ÿฌ์—์„œ ์˜ˆ์™ธ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธ€๋กœ๋ฒŒ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ๊ธฐ๋ฅผ ๋งŒ๋“ค์–ด ์ „์ฒด ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ ๋กœ์ง์„ ์ง‘์ค‘ํ™” ํ•ฉ๋‹ˆ๋‹ค. Other Useful Annotations * @Qualifier ๋™์ผํ•œ ์œ ํ˜•์˜ ์—ฌ๋Ÿฌ ๋นˆ์ด ์กด์žฌํ•  ๋•Œ ํŠน์ •ํ•œ ๋นˆ์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. * @Value ์Šคํ”„๋ง ๊ตฌ์„ฑ ์š”์†Œ์˜ ๊ฐ’์„ ์Šคํ”„๋ง ๋นˆ์— ์ฃผ์ž…ํ•ฉ๋‹ˆ๋‹ค. * @Profile ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ํ”„๋กœํŒŒ์ผ์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. * @PostConstruct and @PreDestroy ๊ฐ๊ฐ ๋นˆ์ด ๊ตฌ์„ฑ๋œ ํ›„ ๋ฐ ํŒŒ๊ดดํ•˜๊ธฐ ์ „์— ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. * @Async and @EnableAsync Async์€ ๋ฉ”์„œ๋“œ๋ฅผ ๋น„๋™๊ธฐ์‹์œผ๋กœ ํ‘œํ˜„ํ•˜์—ฌ ๋ณ„๋„์˜ ์Šค๋ ˆ๋“œ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ณ , EnableAsync์€ ๋น„๋™๊ธฐ์‹ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

์•Œ๋ฆผ

์•Œ๋ฆผ์ด ์—†์Šต๋‹ˆ๋‹ค