addAttribute()

HY·2025년 1월 23일

addAttribute

Model 객체에서 데이터를 view 페이지로 넘길 때, 데이터를 담는 방식이다.

model.addAttribute(String key, Object value)

데이터를 key-value 형태로 put해준다.

이렇게 전달된 데이터는 view 페이지에서 ${} 를 사용해 가져올 수 있다.

@RequestMapping이 부여된 메소드들은 Controller역할 메소드이다.
Controller는 Model을 이용해 데이터를 갖고오고, veiw에 데이터를 넘겨 적절한 view를 생성하는 역할을 한다.

Controller 파일에서
model.addAttribute(String name, Object value);

"name"이라는 이름으로 value 객체를 추가한다는 뜻이다.

예시

model.addAttribute("marketList", marketList);
"marketList"라는 이름으로 marketList 객체를 추가한다.
(view 페이지에서 불러올 때 이름을 헷갈리지 않기 위해 name과 value의 이름을 같게 지었다.)

위의 예시 코드 중 marketList라는 value는 등록되어있는 게시글을 전부 받아오는 객체이다.
이를 view 페이지에서 받아오려면

			<c:forEach var="MarketVO" items="${marketList}">
				<tr onclick="location.href='detail?marketId=${MarketVO.marketId }'">
					<td>${MarketVO.marketId }</td>
					<td>${MarketVO.marketTitle }</td>
					<td>${MarketVO.marketLocal }</td>
					<td>${MarketVO.marketReplyCount	}</td>
				</tr>
			</c:forEach>

이런 식으로 ${} 와 forEach 구문을 사용해 등록되어있는 게시글을 전부 불러오고,
아이디/제목/지역/댓글수 를 출력할 수 있다.

profile
안녕하세요

0개의 댓글