728x90
BoardService에 게시글을 불러오는 boardView 추가
// 특정 게시글 불러오기
public Board boardView(Integer id) {
return boardRepository.findById(id).get();
}
findById가 Optional 값으로 받아오는데, .get( )메서드로 처리하여 값을 가져옴
게시글의 상세 페이지를 볼 수 있도록 하는 boardview.html 작성
<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>게시글 상세 페이지</title>
</head>
<body>
<h1 th:text="${board.title}">제목입니다.</h1>
<p th:text="${board.content}">내용이 들어갈 부분입니다.</p>
</body>
</html>
BoardController에서 boardView 작성
@GetMapping("/board/view") // localhost:8080/board/view?id=1
public String boardView(Model model, Integer id) {
model.addAttribute("board", boardService.boardView(id));
return "boardview";
}
id값과 model을 받아오는데, 값을 넘겨줄 때는 매개변수에 Model을 정의해주어야 하기때문에 model을 받아온다.
받아온 id 값이 boardService의 boardView로 들어가서 해당하는 게시글의 번호를 찾는다.
가장 첫 번째 게시글과 가장 마지막 게시글을 조회
게시글 리스트의 글 제목을 입력하면 내용을 볼 수 있는 기능 추가
boardlist.html의 <tbody> 태그 내부의 내용을 다음과 같이 수정
<tr th:each="board : ${list}">
<td th:text="${board.id}">1</td> <!-- board의 id를 출력 -->
<td>
<a th:text="${board.title}" th:href="@{/board/view(id=${board.id})}"></a>
</td>
</td> <!-- board의 title을 출력 -->
</tr>
<a th:text="${board.title}" th:href="@{/board/view(id=${board.id})}"></a> 에 대한 설명
/board/view로 요청할 때 id의 값을 board.id로 설정해서 요청할 것임을 지시
728x90
'스프링 부트 > [스프링 부트] 게시판 무작정 따라하기' 카테고리의 다른 글
[스프링 부트] 게시판 무작정 따라하기 - 7. 파일 업로드 (0) | 2023.03.13 |
---|---|
[스프링 부트] 게시판 무작정 따라하기 - 6. 메시지 띄우기 (0) | 2023.03.13 |
[스프링 부트] 게시판 무작정 따라하기 - 4. 게시글 삭제 (0) | 2023.03.13 |
[스프링 부트] 게시판 무작정 따라하기 - 2. 게시글 리스트 (0) | 2023.03.12 |
[스프링 부트] 게시판 무작정 따라하기 - 1. 글 작성 처리 (0) | 2023.03.12 |