- Representational State Transfer
- ํ๋์ URI๋ ํ๋์ ๊ณ ์ ํ Resource๋ฅผ ๋ํํ๋๋ก ์ค๊ณ๋๋ค๋ ๊ฐ๋ .
- ์์(Resource)- URI
- ํ์(Verb)- HTTP method
- ํํ(Representations)
- URI๋ ์ ๋ณด์ ์์์ ํํํด์ผ ํ๋ค.
- ์์์ ๋ํ๋ด๊ธฐ ์ํด์๋ ๋ช ์ฌ(noun)๋ฅผ ์ฌ์ฉํด์ผํ๋ฉฐ, ํํํ๊ณ ์ ํ๋ ์์์ด ๋ณต์ํ์ผ ๊ฒฝ์ฐ์๋ ์ด๊ฒ์ ๋ช ์ํด์ผ ํ๋ค.
- ์์์ ๋ํ ํ์๋ Http method(GET, POST, PUT, DELETE)๋ก ํํํ๋ค.
- spring MVCํจํด์ ๊ฒฝ์ฐ ์๋ฒ์์ html์ ๊ทธ๋ ค์ ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ด๋๋ฐ, REST API ์ํคํ ์ฒ ์คํ์ผ์ ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ๋ถ๋ฆฌ๋๋ฉฐ ๋ฐ์ดํฐ๋ HTTP ํ๋กํ ์ฝ ์์์ ์ฃผ๊ณ ๋ฐ๋ ๋ฐฉ์์ด๋ค.
spring์์ controller์ @ResponseBody
๊ฐ ๋ถ์ผ๋ฉด spring์ viewResolver
๋์ ์ HTTP Message Converter
์ ์ํด view๊ฐ ์๋, data ์์ฒด๋ฅผ ๋ฆฌํดํ๊ฒ ๋๋ค.
HttpMessageConverter์๋ ์ฌ๋ฌ Converter๊ฐ ๋ฑ๋ก๋์ด์๊ณ , ๋ฐํํด์ผํ๋ ๋ฐ์ดํฐ์ ์ข ๋ฅ์ ๋ฐ๋ผ ์ฌ์ฉ๋๋ converter๊ฐ ๋ฌ๋ผ์ง๋ค.
spring4๋ถํฐ ์ ๊ณต๋๋ @RestController
-
class level์ ์ ์ธํ ์ ์์ผ๋ฉฐ,
-
@RestController
๊ฐ ๋ถ์ ์ปจํธ๋กค๋ฌ์ ๋ชจ๋ ๋ฉ์๋๋ ์๋์ผ๋ก@ResponseBody
๊ฐ ์ ์ฉ๋๋ค.