-
8강. API스프링 프레임워크-입문 2021. 5. 2. 09:46
또 다른 방식인 API 방식입니다.
사실 두 가지 방법만을 기억하면 됩니다. 첫번째는 MVC와 템플릿 엔진이고 두번째는 API 방식입니다.
HelloController에 아래의 메서드를 추가해주겠습니다.
이 코드는 Get방식으로 URL에 'hello-spring'을 입력하고 들어올 때 name이라는 파라미터를 받아 'hello+name'으로 반환한다는 것입니다. @ResponseBody는 HTTP Body부에 이 내용을 직접 넣어주겠다는 의미입니다.
(HTTP는 헤더부와 바디부로 구성됩니다.)
이를 보면 화면에 그대로 출력이 된 것을 확인할 수 있습니다.
우리는 이제 다른 방식의 API를 확인해 보겠습니다.
우선 클래스를 만들고 name에 해당하는 getter와 setter를 만들도록 하겠습니다.
그 후 hello-api를 get방식으로 접근하는 URL을 helloApi와 매핑하고 name이라는 키로 파라미터를 받아 객체를 생성해 여기에 set으로 주입한 후 반환시키겠습니다.
이렇게 되면 JSON 방식으로 반환된 것을 알 수 있습니다. 이러한 방식을 우리가 대게 API 방식이라고 말합니다.
* JSON은 {키:값} 이 형식으로 이루어집니다.
* 최근 JSON 방식으로 통일 (XML은 이제 거의 쓰지 않음)
* Spring도 JSON으로 반환하는 것이 default입니다.
@ResponseBody가 없다면 ViewResolver에 데이터를 넘겨주었겠지만 @ResponseBody가 있으면 HTTP 응답에 바로 넣었다고 인식하고 그렇게 처리합니다. 이 때 동작하는 것이 HttpMessageConverter가 동작합니다. 단순 문자열이면 StringConverter가 동작하고 객체이면 JsonConverter가 동작합니다.
원하는 형식으로 바꿔서 보낼 수 있습니다. byte, XML etc....
'스프링 프레임워크-입문' 카테고리의 다른 글
10강. 회원 도메인과 레포지토리 만들기 (0) 2021.05.02 9강. 비즈니스 요구사항 정리 (0) 2021.05.02 7강. MVC와 템플릿 엔진 (0) 2021.05.02 6강. 정적 컨텐츠 (0) 2021.05.02 4강. View 환경설정 + 5강. 빌드하고 실행하기 (0) 2021.05.02