
Controller -> View로 데이터 전달할 때 사용하는 객체이다.
비즈니스 로직의 결과값이나 사용자의 입력을 Controller 내에서 Model 객체에 담아 View로 전달한다.
// ModelExController.java
@Controller
@RequestMapping("/ex")
public class BasicController {
@GetMapping("/model")
public String textBasic(Model model) {
model.addAttribute("data", "Model Value");
return "basic";
}
}
key-value 쌍의 컨테이너로 사용되며, model.addAttribute("key값", value값); 코드를 통해 저장된다. 그리고 basic.html 이라는 View 템플릿을 반환하고, 해당 View에 Model에 저장된 값을 전달하여 동적으로 웹 페이지를 생성한다.
<!--basic.html-->
<!DOCTYPE html>
<html>
...
<body>
<h1>Hi</h1>
<p>${data}</p>
</body>
</html>