개발일기
회원 웹 기능 - 조회 본문
@GetMapping("/members")
public String list(Model model){
List<Member> members = memberService.findMembers();
model.addAttribute("members",members);
return "members/memberList";
}
members의 url로 접근하면 해당 GetMapping의 list메서드가 실행 된다.
이 때 Member 클래스 타입을 타입으로 가져 List형태로 차례대로 배열에 집어 넣어준다.
이후에 addAttribute를 통해서 view에 넘겨줄 준비를 해준다.
return "members/memberList" 부분에서 members 값들을 memberList view로 넘겨주어 값을 출력해줄 것이다.
이 때 html은 다음과 같음.
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<body>
<div class="container">
<div>
<table>
<thead>
<tr>
<th>#</th>
<th>이름</th> </tr>
</thead>
<tbody>
<tr th:each="member : ${members}">
<td th:text="${member.id}"></td>
<td th:text="${member.name}"></td>
</tr>
</tbody>
</table>
</div>
</div> <!-- /container -->
</body>
</html>
thymeleaf의 역할을 설명하기 전에 지금까지 해온 코드들을 한번 Run 시켜보자.
해당 코드가 정상적으로 작동하는 모습을 살펴 볼 수 있다.
members를 getMapping하였던 liest메서드에서 addAttribute 해준 members값을 view 단에 있는 ${members}는 model안에 있는 값을 꺼내온다.
타임리프의 문법으로 th:each라고 하면 th=each ="member : ${member}"에서 model에서 member를 하나 꺼내서 member를 하나 다음. 그리고 객체의 값들을 하나씩 꺼내서 html태그에 담아 넣어준다.
'Spring > Spring tutorial - 코드로 배우는 스프링 (김영한)' 카테고리의 다른 글
순수 JDBC (1) | 2022.09.28 |
---|---|
H2 데이터베이스 설치 (0) | 2022.09.26 |
회원 웹 기능 - 등록 (0) | 2022.09.26 |
회원 웹 기능 - 홈 화면 추가 (3) | 2022.09.26 |
자바 코드로 직접 스프링 빈 등록하기 (0) | 2022.09.26 |