[Springboot] Model을 활용해 데이터 전달 및 출력하기
아이티윌의 국비지원 [스프링부트 SNS 포토그램 프로젝트] 강의를 수강하며 정리한 내용입니다.
오늘의 실습
- Model을 사용하여 View 페이지로 데이터 값 넘기기
- Model로 넘어온 데이터 값을 View 페이지에서 출력하기
🔎그 전에 알아야할 것
Model?
Model은 Spring Framework에서 사용되는 인터페이스로, 컨트롤러에서 뷰로 데이터를 전달하는 데 사용된다.
addAttribute()?
addAttribute 메서드는 Model 인터페이스에서 제공하는 메서드 중 하나로, 뷰로 전달할 데이터를 추가하는 데 사용된다. 이 메서드를 사용하여 key-value 쌍(HashMap)을 추가할 수 있으며, 이후 뷰 페이지에서 해당 key를 사용하여 데이터를 추출할 수 있다.
실습
[Model을 사용하여 View 페이지로 데이터 값 넘기기]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Controller
public class JavaToJspController {
@GetMapping("/jsp/java/model")
public String jspToJavaToModel(Model model) { // Model 선언
User user = new User();
user.setUsername("ssar");
model.addAttribute("username", user.getUsername()); // addAttribute 함수로 데이터 전달
return "e";
}
}
컨트롤러에서는 Model을 파라미터로 받아 이를 활용해 뷰로 데이터를 전달하고, addAttribute 메서드를 사용하여 전달할 데이터를 설정한다. 이렇게 함으로써 뷰는 컨트롤러가 전달한 데이터를 활용하여 동적으로 페이지를 생성할 수 있다.
[Model로 넘어온 데이터 값을 View 페이지에서 출력하기]
1
2
3
4
5
6
7
8
9
10
11
12
13
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h1>This is e</h1>
<h3>${username}</h3>
</body>
</html>
데이터 값을 출력하기 위해선 ${} 안에 key 값을 적어주면 된다.
<제대로 출력되는지 확인!>
This post is licensed under CC BY 4.0 by the author.