게시판 만들기/JSP ➜ Spring

[Spring]2. 게시판 구현 CRUD - 글 보기

code-mo 2023. 2. 10. 07:30
728x90

1. JSP 글 보기 페이지

글보기 페이지를 이동할 때 글의 순번을 넘겨받아 해당글의 정보를 가져와 글 정보를 보여주고, 로그인한 사용자가
있고 그 사용자와 글 장성자가 동일시 수정, 삭제를 할 수 있게 해 준다.
<c:if test="${sessionScope.userID == boardDTO.userID}">

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<div class="row">
    <table class="table table-striped"
        style="text-align: center; border: 1px solid #dddddd">
        <thead>
            <tr>
                <th colspan="3"
                    style="background-color: #eeeeee; text-align: center;">게시판 글
                    보기</th>
        </thead>
        <tbody>
            <tr>
                <td style="width: 20%;">글 제목</td>
                <td colspan="2">${boardDTO.bbsTitle}</td>
            </tr>
            <tr>
                <td>작성자</td>
                <td colspan="2">${boardDTO.userID}</td>
 
            </tr>
            <tr>
                <td>작성일자</td>
                <td colspan="2">${boardDTO.bbsDate}</td>
 
            </tr>
            <tr>
                <td>글 내용</td>
                <td colspan="2" style="min-height: 200px; text-align: left;">
                ${boardDTO.bbsContent}</td>
 
            </tr>
        </tbody>
    </table>
    <a href="board" class="btn btn-primary">목록</a>
    <c:if test="${sessionScope.userID == boardDTO.userID}">
        <a href="update?bbsID=${boardDTO.bbsID}" class="btn btn-primary">수정</a>
        <a onclick="return confirm('정말로 삭제하시겠습니까 ?')" href="deleteAct?bbsID=${boardDTO.bbsID}" class="btn btn-primary">삭제</a>
    </c:if>
 
</div>
cs

 

2. 글 보기 Controller

1
2
3
4
5
6
7
8
9
10
11
12
//페이지 - 게시글 보기
@RequestMapping(value = "/view", method = RequestMethod.GET)
public String view(HttpServletRequest request, HttpServletResponse response,
        Model model,
        @RequestParam int bbsID) {
 
    BoardDTO boardDTO = new BoardDTO();
    boardDTO = boardSvc.selectBoard(bbsID);
    
    model.addAttribute("boardDTO", boardDTO);
    return "board/view";
}
cs

 

3. 글 보기 Service

1
2
3
4
//게시글 보기
public BoardDTO selectBoard(int boardID) {
    return session.selectOne("selectBoard", boardID);
}
cs

 

4. 글 보기 Select 쿼리

글을 조회할 때 글의 사용유무를 확인하여 삭제되지 않은 글을 조회할 수 있도록 한다.
1
2
3
4
5
<!-- 게시글 보기 -->
<select id="selectBoard" resultType="com.board.BoardDTO">
    SELECT bbsID, bbsTitle, userID, bbsDate, bbsContent FROM bbs.bbs
    WHERE bbsAvailable = 1 AND bbsID = #{bbsID}
</select>
cs