주노 님의 블로그

[Spring] 3. 서버가 클라이언트에게 페이지를 전달하는 방식 (API) 본문

공부/Spring

[Spring] 3. 서버가 클라이언트에게 페이지를 전달하는 방식 (API)

juno0432 2024. 7. 27. 21:21

 

시작하기에 앞서

아래 내용은 김영한님의 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB접근기술에서 발췌한 내용입니다.

 

 

강의자료 일부를 발췌하는건 괜찮다고 하셨다.

무료강의로 지식을 공유해주신 김영한님께 다시한번 감사의 인사를 올리겠습니다

(_ _) (유료도 샀어요!)

 

Controller에 위처럼 설계를 했다

전과는 다르게

@ResponseBody가 추가되었는데

http의 통신 프로토콜에서 request, status, head, body가 있는데 그 body부분에 직접 넣어준다는 뜻이다

 

mvc 방식 + 템플릿엔진 은 html을 렌더링해서 보내주지만

mvc + 템플릿엔진 방식

 

api 방식

객체를 보내주게 되면 어떻게 될까?

키 값쌍의 JSON방식으로 보내진다.

 

responseBody는 어떤 방식으로 작동할까?

유저의 localhst:8080/hello-api의 get 요청을받으면

내장 톰켓서버에서 hellocontroller에서 있다는 것을 찾고

어노테이션 ResponseBody를 확인하고

 

객체가 오면 

스프링부트는

HttpMessageConverter를 이용해서

JSON형식으로 변환후  Http응답에다 담고 전송한다.

 

return의 hello를 찾아

model(키name :값 juno)넣은 내용을

 

api방식은 데이터를 그대로 보내준다

사용자가 비밀번호나, 아이디등 데이터를 보낼때 사용된다.