📌 list.jsp
<html>
<head>
<meta charset="UTF-8">
<title>게시글 목록</title>
</head>
<body>
<!-- table list start -->
<div class="container">
<h2 id="center">${boardName}</h2>
<p align="right">
<c:if test="${boardcount > 0}">글개수:${boardcount}</c:if>
<c:if test="${boardcount == 0 }">등록된 게시물이 없습니다.</c:if>
</p>
<table class="table table-hover">
<thead>
<tr>
<th>번호</th>
<th>제목</th>
<th>작성자</th>
<th>등록일</th>
<th>파일</th>
<th>조회수</th>
</tr>
</thead>
<tbody>
<c:forEach var="b" items="${list}">
<tr>
<td>${boardnum}</td>
<c:set var="boardnum" value="${boardnum - 1}"/>
<td>
<a href="info?num=${b.num}">${b.subject}</a></td>
<td>${b.writer}</td>
<td>${b.regdate}</td>
<td>
<a href="../upload/${b.file1}">${b.file1}</a></td>
<td>${b.readcnt}</td>
</tr>
</c:forEach>
</tbody>
</table>
<c:if test="${(param.boardid != 1) || (sessionScope.login == 'admin')}">
<p align="right"><a href="writeForm">게시글 입력</a></p>
</c:if>
<%-- 페이징 부분 --%>
<div class="container">
<ul class="pagination justify-content-center">
<li class="page-item <c:if test='${startPage <= bottomLine}'>disabled</c:if>">
<a class="page-link" href="list?pageNum=${startPage - bottomLine}">Previous</a></li>
<c:forEach var="i" begin="${startPage}" end="${endPage}">
<li class="page-item<c:if test='${i == pageInt}'>active</c:if>">
<a class="page-link" href="list?pageNum=${i}">${i}</a>
</li></c:forEach>
<li class="page-item<c:if test='${endPage >= maxPage}'>disabled</c:if>">
<a class="page-link" href="list?pageNum=${startPage + bottomLine}">Next</a></li>
</ul> </div>
</div>
<!-- table list end -->
</body>
</html>
📌 boardController.java 추가
@RequestMapping("list")
public String list (HttpServletRequest request, HttpServletResponse response) {
try {
request.setCharacterEncoding("UTF-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
HttpSession session = request.getSession();
if(request.getParameter("boardid") != null) {
session.setAttribute("boardid",request.getParameter("boardid"));
session.setAttribute("pageNum","1");
}
String boardid = (String)session.getAttribute("boardid");
if(boardid == null) boardid = "1";
int pageInt = 1;
int limit = 10;
if(request.getParameter("pageNum") != null) {
session.setAttribute("pageNum",request.getParameter("pageNum"));
}
String pageNum = (String)session.getAttribute("pageNum");
if(pageNum == null) {
pageNum = "1";
}
pageInt = Integer.parseInt(pageNum);
// int boardcount = dao.boardCount(boardid);
// List<Board> list = dao.list(pageInt, limit, boardid);
int boardcount = 0;
List<Board> list = null;
int boardnum = boardcount - (pageInt - 1) * limit;
int bottomLine = 3;
int startPage = (pageInt - 1) / bottomLine * bottomLine + 1;
int endPage = startPage + bottomLine - 1;
int maxPage = (boardcount / limit) + (boardcount % limit == 0 ? 0 : 1);
if(endPage > maxPage) endPage = maxPage;
String boardName = "공지사항";
switch(boardid) {
case "3":
boardName = "QNA"; break;
case "2":
boardName = "자유게시판"; break;
}
request.setAttribute("boardName",boardName);
request.setAttribute("pageInt",pageInt);
request.setAttribute("boardid",boardid);
request.setAttribute("boardcount",boardcount);
request.setAttribute("list",list);
request.setAttribute("boardnum",boardnum);
request.setAttribute("startPage",startPage);
request.setAttribute("bottomLine",bottomLine);
request.setAttribute("endPage",endPage);
request.setAttribute("maxPage",maxPage);
return "/view/board/list.jsp";
}
'수업(국비지원) > JSP' 카테고리의 다른 글
| [JSP] MVC MODEL2 방식 - 관리자 공지사항 작성(list) (0) | 2023.04.20 |
|---|---|
| [JSP] MVC MODEL2 방식 - 로그인 시 화면 list 변화(kiclayout, layout) (0) | 2023.04.20 |
| [JSP] MVC MODEL2 방식 - 게시판(board, boardController, BoardDao) (0) | 2023.04.20 |
| [JSP] MVC MODEL2 방식 - 게시판 만들기(kiclayout, writeForm) (0) | 2023.04.20 |
| [JSP] MVC MODEL2 방식 - 아이디 중복체크(joinForm, idchk) (0) | 2023.04.20 |