Spring을 공부하다가, 우연히 Model이라는 걸 처음 듣게 되었을 때, 음 Model? 

 

 

모형이나 본보기, 회화 조각, 문학, 미술 공예.. 등 다양한 뜻이 나오는데....뭔가 프로그래밍 언어에 적합한 Model의 의미는 못 찾았다....😂 

 

그래서 프로그래밍에 적합한 Model을 찾기 위해 고군분투를 했다.

참고한 예시 코드를 보니 아래와 같았다.

@RequestMapping(value="/modelTest") 

public String test1(Model model) {

    String str = "GoCoder";

    model.addAttribute("test",str);    	

    return "modelTest";

}

model의 특징은 아래와 같다.

model.addAttiribute("test",str)에 "첫 번째 매개변수" 값은 개발자가 "직접" 정하는 것

model.addAttribute() 메서드의 첫 번째 매개변수는 개발자가 직접 정하는 키(key), 이 키는 템플릿 엔진(예: Thymeleaf, JSP 등)에서 사용되며, 템플릿에서 "변수를 참조"할 때 사용하는 이름이 된다.

예제 코드에서 model.addAttribute("test", str); 구문은 model 객체에 "test"라는 키로 str 변수를 추가한다. 이렇게 추가된 데이터는 템플릿 엔진에서 "test"라는 이름으로 참조할 수 있다.

예를 들어, Thymeleaf를 사용하는 경우 리턴된 view 이름 html에서 다음과 같이 템플릿에서 "test" 변수를 사용할 수 있다.

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title>Model Test</title>
</head>
<body>
    <h1 th:text="${test}"></h1>
</body>
</html>

즉, 첫번째 매개변수 값은 뭐랄까... 서로 떨어져 있는 대상에게 전달할 때 쓰는 우편 봉투와 같은 것, 우편 봉투의 내용은 두 번째 매개변수 값이다!

 

 

참고: Spring Model 이란?

 

 

Spring Model 이란?

안녕하세요. 고코더 입니다. 오늘은 스프링에서 자주 사용하는 Model을 알아보는 시간을 가져보겠습니다. Model이란? Model 객체는 컨트롤러에서 데이터를 생성해 이를 JSP 즉 View에 전달하는 역할을

gocoder.tistory.com

 

 

+ Recent posts