728x90
회원 웹 기능 - 조회
아직은 회원 목록을 누르면 작동하지 않는다. 하지만 /member로 가게 설정해두었기 때문에 컨트롤러에서 members로 GetMapping을 하고 코드를 작성한다.
...
@GetMapping("/members")
public String list(Model model) {
List<Member> members = memberService.findMembers();
model.addAttribute("members", members);
return "members/memberList";
}
memberList를 생성해서 회원 목록을 보여주는 페이지를 만든다.
<!-- members/memberList.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>
model의 key로 모든 회원을 조회해서 members에 담아두고, 반복을 돌며 Member 클래스의 getId( ) 메서드와 getName( )의 메서드를 통해 접근하여 모든 회원의 id와 name을 출력한다.
타임리프와 같은 템플릿 엔진의 역할: 데이터를 읽어들여 렌더링 후의 결과를 출력
여기까지 완료하게 되면 회원 등록 및 회원 목록 출력이 가능하다.
하지만 데이터가 모두 메모리에 있기때문에 서버를 재시작하게 되면 데이터가 모두 지워지게 된다.
스프링 데이터 액세스라는 기술을 통해 스프링을 DB와 연결하게 되면 데이터를 저장하는 것이 가능해진다.
728x90
'스프링 부트 > 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 카테고리의 다른 글
25. AOP 적용 (0) | 2023.03.13 |
---|---|
16. 회원 웹 기능 - 등록 (0) | 2023.03.13 |
24. AOP가 필요한 상황 (0) | 2023.03.12 |
18~23. 스프링 DB 접근 기술 (0) | 2023.03.11 |
15. 회원 웹 기능 - 홈 화면 추가 (0) | 2023.03.11 |