스프링 부트 동작과정

신범철·2022년 8월 23일
0

스프링부트

목록 보기
4/20

MVC, 템플릿 엔진 동작과정

  1. 웹브라우저에서 localhost:8080/hello-mvc로 request요청을 보낸다.
  2. 요청을 톰캣이 받고 디스패쳐 서블릿이 web.xml(환경 설정 같은거임ㅇㅇ)에 있는 데이터를 읽고, 스프링 컨테이너를 생성한다.
  3. 그 사이에 bean factory에서 필요한 객체를 bean factory에 등록한다.
  4. 스프링 컨테이너에서 들어온 요청에 맞는 컨트롤러를 찾고 거기에 맞는 처리를 한다.
  5. (타임 리프에 경우) viewResolver가 처리에 맞는 html파일을 찾아 응답해준다.

MVC, Rest == @ResponseBody 사용 동작과정

  1. 웹브라우저에서 localhost:8080/hello-mvc로 request요청을 보낸다.
  2. 요청을 톰캣이 받고 디스패쳐 서블릿이 web.xml(환경 설정 같은거임ㅇㅇ)에 있는 데이터를 읽고, 스프링 컨테이너를 생성한다.
  3. 그 사이에 bean factory에서 필요한 객체를 bean factory에 등록한다.
  4. 스프링 컨테이너에서 들어온 요청에 맞는 컨트롤러를 찾고 거기에 맞는 처리를 한다.
  5. (@ResponseBody에 경우) HTTP의 body에 문자 내용을 직접 반환한다.
  6. viewResolver 대신 HttpMessageConverter가 동작한다.
    => HttpMessageConverter는 반환하는 body가 문자인지 객체인지 판단해 JsonConverter로 실행할지, StringConverter실행할지 판단
  • 기본 문자처리 구현체 : StringHttpMessageConverter = String 쓴다고 생각하면 됨
  • 기본 객체처리 구현재 : MappingJackson2HttpMessageConverter = 잭슨 라이브러리 사용한다고 생각하면됨
  1. 문자든 객체든 Converter에 의해 처리되어 응답

추가할 내용

자세한 내용은 아래 링크를 참고 하자.
링크

profile
https://github.com/beombu

0개의 댓글