spring에 대해 까먹은 부분도 있고 겉핥기식으로 알고 있는 부분이 많아
spring을 제대로 이해해 보고자 인프런의 김영한님의 강의를 듣기 시작했다.

https://start.spring.io/
spring initializr는 처음 사용해 봤는데 굉장히 편리하다.
메이븐과 그래들은 필요한 라이브러리들을 땡겨오고 라이프사이클까지 관리해주는 툴이다.
요즘엔 그래들을 많이 사용하는 추세이다.
Gradle은 의존관계가 있는 라이브러리를 함께 다운로드 한다.
내가 추가한 spring-boot-starter-web이 의존하고 있는 라이브러리들을 gradle이 다 땡겨온다.
사진상의 spring-boot-starter-tomcat 또한 gradle에 의해 설치되어있다.
한마디로 spring boot와 관련된 라이브러리를 쓰면 spring core까지 다~ 세팅이 된다.

컨트롤러에서 리턴 값으로 문자를 반환("hello")하면 뷰리졸버가 templates에서 hello.html을 찾아서 모델을 넘기며 처리한다.
템플릿엔진(thymeleaf)를 모델,뷰,컨트롤러로 쪼개서
컨트롤러에서 뷰로 모델에 데이터를 담아서 전달.
뷰를 렌더링해서 client에게 전달.

@ResponseBody : http의 body에 return값을 직접 넣겠다.
return값이 객체라면 json으로 변환된다.