minghxx.blog
  • [Spring] 스프링 입문 2) 스프링 웹 개발 기초
    2023년 10월 14일 08시 26분 14초에 업로드 된 글입니다.
    작성자: 민발자
    728x90

    스프링 입문 - 스프링 부트 웹 MVC, DB 접근 기술 

    Session 1 스프링 웹 개발 기초

    1. 정적 컨텐츠

    1) 스프링 부트 정적 컨텐츠 기능 static content

     

    ① localhost:8080/hello-static.html 주소로 들어가면 내장 톰캣 서버가 요청을 받는다

    ② 스프링 부트가 컨테이너에 hello-static 관련 컨트롤러를 확인

    ③ 컨트롤러가 없으면 src/main/resources/static 폴더에서 hello-static 관련 html을 찾아 웹브라우저에게 전달


    2. MVC와 템플릿 엔진

    MVC : Model, View, Controller

     

    ① localhost:8080/hello-mvc 주소로 들어가면 내장 톰캣 서버가 요청을 받는다

    ② 스프링 부트가 컨테이너에 hello-mvc 관련 컨트롤러를 확인 후 컨트롤러 호출

    ③ 컨트롤러 메서드가 실행하여 hello-template, model를 스프링에게 반환

    ④ viewResolver가 hello-template 뷰를 찾고 템플릿엔진 연결해줌

    ⑤ 템플릿 엔진이 렌더링하고 html 웹브라우저에게 전달

     


    3. API

    localhost:8080/hello-api 주소로 들어가면 내장 톰캣 서버가 요청을 받는다

    스프링 부트가 컨테이너에 hello-api 관련 컨트롤러를 확인 후 컨트롤러 호출

    컨트롤러가 hello 객체로 전달(@ResponseBody 애노테이션에 의해 HTTP BODY에 문자를 직접 반환)

    ④ 객체를 받은 HttpMessageConverter가 json형식 데이터로 웹 브라우저에 전달

     

    뷰없이 객체로 반환

    @ResponseBody가 있으면 HttpMessageConverter가 객체를 JSON형태로 변환해 HTTP BODY에 직접 응답

    728x90
    댓글