MVC의 역할과 실행 흐름
웹 서비스는 클라이언트와 서버의 소통을 통해 동작한다.
이 때 스프링 부트는 서버의 역할을 하는데 서버로서의 스프링 부트를 한단계 더 들여다 보면 Model, View ,Controller의 유기적 역할 분담이 존재한다.
Controller는 클라이언트로 부터 요청을 받고 View는 최종 페이지를 만들어주고 Model은 최종페이지에 쓰일 데이터들을 뷰에게 전달한다.
이러한 패턴을 MVC 패턴이라고 한다.
view 규칙
Controller 규칙
Model 규칙
이 전 강의때 했던 내용을 바탕으로 복습하면서 MVC 실행 흐름을 알아보았다.
/templates/goodbye.mustache
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>{{nickname}}님, 안녕히 가세요!</h1>
</body>
</html>
src/main/java/com/example/springstudy/controller/FirstController.java
@GetMapping("/bye") // -> GetMapping으로 /bye 페이지를 받으면
public String goodBye(Model model) {
model.addAttribute("nickname", "윤현우"); // --> Model 객체로 데이터를 받아서
return "goodbye"; // ---> View로 페이지를 뿌려준다
}
@GetMapping
model.addAttribute("nickname", "윤현우");
return "goodbye";
References(참고자료)
https://www.inflearn.com/course/%EA%B0%9C%EB%85%90%EC%8B%A4%EC%8A%B5-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8-%EC%9E%85%EB%AC%B8
https://cocoon1787.tistory.com/733