댓글 만들기가 어려워서 헤매고 있어서
만만한 게시판을 보완해보았다 +.+
1) 이전글, 다음글 보기
BoardController @GetMapping(/read) 에
BoardDto prevBoard = service.read(no-1);
BoardDto nextBoard = service.read(no+1);
m.addAttribute("prevBoard", prevBoard);
m.addAttribute("nextBoard", nextBoard);
현재 글에 no-1, no+1을 해서 찾은 BoardDto,
prevBoard와 nextBoard를 만들고 모델에 넣어준다
board.jsp
<table>
<tr><td>이전글 </td><td><a href="/board/read?no=${prevBoard.no}&page=${p.page}&pageSize=${p.pageSize}"> ${prevBoard.title}</a></td></tr>
<tr><td>다음글 </td><td><a href="/board/read?no=${nextBoard.no}&page=${p.page}&pageSize=${p.pageSize}"> ${nextBoard.title}</a></td></tr>
</table>
이전글과 다음글 테이블을 만들고
글 제목을 클릭하면 해당 이전글 또는 다음글로 갈 수 있도록 a태그(하이퍼링크)를 붙여준다
결과는?
2) 내 글에만 수정, 삭제 버튼 보이기
전에는 내 글이 아닌 글에도 수정, 삭제가 떴었다
대신 수정, 삭제 버튼을 누르면 (내 글만 수정, 삭제가 가능합니다) 알림이 뜨긴 했지만
역시 내 글에만 수정 삭제 버튼이 있는 것이 제일 보기 좋다!!!
요것은 구현하기 아주 간단했다
board.jsp
<!-- 글쓴이와 세션ID가 같을 때만 수정, 삭제 보이게 하기 -->
<c:if test="${boardDto.id eq id}">
<button type="button" id = "removeBtn">삭제</button>
<button type="button" id = "modifyNewBtn" onclick="location.href='/board/modify?no=${boardDto.no}&page=${p.page}&pageSize=${p.pageSize}'">수정</button>
</c:if>
고냥 원래 수정, 삭제 버튼이 있던 자리에
boardDto의 id와 세션 아이디(로그인 아이디)가 같을 때만
수정, 삭제 버튼이 보일 수 있도록 했다
결과는?
3) 글쓰기, 수정할 때 목록을 누르면 -> 확인 버튼을 누르기
보통 블로그나 카페에서 보면
글쓰거나 수정을 할 때, 그냥 목록으로 나가버리면
정말 나가시겠습니까? 하는 확인이 뜬다
매우 쉽게 구현할 수 있다!
board.jsp
// 글쓰기, 수정 상태일 때 목록으로 나갈 거냐고 묻기
$('#listBtn').click(function () {
if(${mode eq 'new'}) {
if(!confirm("글을 등록하지 않았습니다. 그래도 나가시겠습니까?")) return;
}
if(${mode eq 'change'}) {
if(!confirm("아직 수정 전입니다. 그래도 나가시겠습니까?")) return;
}
})
글쓰기 상태나, 수정 상태일 때 목록을 누르면 확인하는 버튼이 뜬다 :)
다른 기능들 구현은 다음 기회에!
'혼자서 개발새발' 카테고리의 다른 글
게시판을 손수 페이징해보자 ^^! (0) | 2022.12.22 |
---|---|
저장용) JPA & QueryDsl 쓰는 법 (0) | 2022.12.20 |
Spring) 댓글 기능 구현 - DB Table, DTO, DAO, Service, Mapper 만들기 (0) | 2022.11.23 |
Spring) 게시판 글 수정을 만들어보자! (0) | 2022.11.23 |
Spring) 게시판에서 글을 삭제(이승기 아님) 해보자! (0) | 2022.11.22 |