spring은 MVC(Model - View - Controller) 구조를 기반으로 한다.
우선, 코드를 기반으로 spring 안에서 MVC가 어떻게 동작하는지 이해해보자.
MVC in Spring
java 폴더 안에 controller 패키지를 생성하고, HelloController.java 파일을 생성한다.
html 파일은 resources/templates 파일 아래에 생성한다.

spring은 자바의 어노테이션 기반으로 코드를 짠다.
위의 코드에서도 Getmapping으로 "/hello" 주소가 들어오면 어떤 페이지를 띄워줄건지, 어떤 데이터를 넘길건지 지정할 수 있다.
model에 key:data, value:hello!! 값을 저장한 후에 hello.html을 띄워주는 로직이다.

th로 thymeleaf를 템플릿 엔진으로 정의해주고, ${data} 라고 사용하면 key가 data인 value 값을 넣어주는 것이다.
위에서는 hello!!를 value로 넣어주었다.

그래서 값이 이렇게 들어갈 것이다.
Concept about MVC
스프링을 빌드하면 tomcat이 실행된다.
웹 브라우저에서 localhost:8080/hello를 실행하면 스프링의 내장 tomcat이 스프링한테 hello 들어왔는데? 이러고 hello 슬롯을 던진다.
그러면 스프링은 Getmapping으로 hello를 매칭한 부분을 찾아가는데, 이렇게 HelloController로 찾아간다.
hello 함수가 실행될 때 매개변수로 Model이 넘어온다.
스프링이 내부적으로 Model을 만들어서 넣어주는데, 이때 {data : hello!!} 로 데이터를 추가해 Model을 넘겨준다.
return으로 랜더링할 html 파일명을 기본적으로 resources/templates 아래에서 찾는다.
화면을 찾아서 띄워주는 역할은 viewResolver가 수행한다.
'Spring' 카테고리의 다른 글
| [spring] - DI 컨테이너 (1) | 2025.05.18 |
|---|---|
| [spring] - test code 작성하기 (0) | 2024.10.01 |
| [spring] - 프로젝트 생성 (0) | 2024.09.29 |