[Spring 입문] 2. 스프링 웹 개발 기초

Nakyeong Lee·2024년 9월 28일

Spring 입문

목록 보기
2/2
post-thumbnail

서버의 전달 방식에는 크게 정적컨텐츠, 템플릿엔진, api 크게 3가지가 있다.

정적 컨텐츠

Spring에서는 resources 안의 static 폴더 내에 html 파일을 저장해두면 화면에 정적 컨텐츠로 내려준다.
ex) hello-static.html이라는 파일 생성 시 http://localhost:8080/hello-static.html 에서 볼 수 있다.

우선 순위는 Controller가 가지고, 컨트롤러에 해당 path가 없을 시 static을 찾는다.

MVC와 템플릿 엔진

MVC: Model, View, Controller
역할과 책임을 명확히 나누는 방법으로, View는 화면을 그리는데만 집중하고, Model과 Controller는 비지니스 로직, Model에서는 넘겨주는 역할 등에만 집중한다.

API

HTTP 통신 프로토콜의 Body에 내 응답을 넣어주기 위해 Controller 내에 @ResponseBody 어노테이션을 사용한다.
ResponseBody로 객체를 내려줄 시, json 방식으로 내려간다.

위와 같이 @ResponseBody 어노테이션이 있으면 viewResolver가 아닌 HttpMessageConverter로 넘어가게 되고, 단순 문자열이면 StringConverter가, 객체라면 JsonConverter가 동작한다.

  • 기본 문자처리: StringHttpMessageConverter
  • 기본 객체처리: MappingJackson2HttpMessageConverter
    byte 처리 등등 기타 여러 HttpMessageConverter가 기본으로 등록되어 있다.
profile
Web Backend Developer

0개의 댓글