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

LDH·2021년 3월 30일
0

🖥스프링 입문

목록 보기
3/4
post-thumbnail

🖥 정적 컨텐츠

있는 그대로의 파일을 보여주기
실행 > http://localhost:8080/hello-static.html
( http://localhost:8080/hello-static 으로 하면 정적인 파일을 찾지 못해서 오류 페이지가 나온다. )

요청은 내장 톰캣 서버를 거쳐 스프링이
1. 스프링 컨테이너에서 hello-static 관련 컨트롤러를 찾고, 없으면
2. resources/static/hello-static.html을 찾게된다.

우선순위는 컨트롤러에 있다!


🖥 MVC와 템플릿 엔진

Model, View, Controller로 나누어 viewRealover가 view를 찾아 템플릿엔진을 연결한다. 템플릿엔진이 view를 처리한 후 렌더링 된 html을 클라이언트에게 전달한다.

실행 > http://localhost:8080/hello-mvc?name=spring

요청은 내장 톰캣 서버를 거쳐 스프링이 hello-mvc 관련 컨트롤러를 찾는다. name을 입력받고 model(name:spring)에 담아 hello-template를 templates아래서 찾는다. viewResolver는 해당 파일을 찾아 템플릿엔진에게 처리하라고 요청을 한다. 변환된 html을 웹브라우저에게 반환한다.


🖥 API

HttpMessageConverter를 통해서 객체를 json형태로 반환해준다.(view필요X)
실행 > http://localhost:8080/hello-string?name=spring

@ResponseBody가 있으면 viewReslover가 아닌 HttpMessageConverter가 동작하도록 한다. HTTP의 BODY에 문자 내용 return:hello(name:spring)을 직접 반환한다.

실행 > http://localhost:8080/hello-api?name=spring

객체(hello)를 반환하면 기본적으로 json형태로 반환하게 되어있다.
기본 문자처리: StringHttpMessageConverter
기본 객체처리: MappingJackson2HttpMessageConverter

profile
💻💻💻

0개의 댓글