[SpringBoot] Model 인터페이스 / 데이터전달 / 사용방법

2023. 12. 31. 11:53SpringBoot+JPA

반응형

 

Model

컨트롤러에서 뷰로 데이터를 전달하는 데 사용되는 인터페이스

 

뷰에 데이터를 전달할 때 사용

컨트롤러에서 처리된 데이터를 뷰에 적용하여 사용자에게 적절한 응답을 생성하는 데 도움

 

Controller의 메서드에서 매개변수로 받아옴

Controller의 메서드에 Model타입의 model 매개변수 추가

→ Model 클래스 패키지 자동 임포트 됨

(앞 글자가 대문자이기 때문에 Model은 클래스 변수!)

 


 

 

model 객체 받아오기

@GetMapping(”/hi”)
public String niceToMeetYou(Model model) {
	return “greeings”;
}

 

 

데이터 전달

model.addAttribute("변수명", 변숫값)
  //개별조회
  @GetMapping("/productdetail")
  public String productDetail (Integer productId, Model model) throws Exception {

    ProductDTO productDTO = productService.findOne(productId);
    model.addAttribute("productDTO", productDTO);

    return "/product/detail";
  }

 

Model에 productDTO이라는 속성이 추가되고,

이 속성은 productdetail이라는 뷰에서 사용이 가능해짐

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Example View</title>
</head>
<body>
    <h1 th:text="${productDTO}"></h1>
</body>
</html>

 

Controller에서 전달된 "productDTO"속성의 값을 출력

 

 

 

반응형