티스토리 뷰

SPRING

0803 개발일기 페이징 Criteria

mind-a 2018. 8. 4. 00:35


2페이지를 보여주는 코드를 입력하고 jUnit을 돌렸다.

지난번에 desc와 asc로 고민했었는데 생각해보니 2페이지라고 하면 가장 최근에 올린 글 중 20~40번째 항목이 떠야하는게 맞다

그럼 지금 출력된게 맞다는거지..! 

페이지를 생각해보면 간단한거였는데 엉뚱하게 생각하고 있었다..



일단 콘솔에서 확인했으니 오늘 목표는 웹에서 보여지게 하고 화면 하단 페이징 처리까지..!


BoardController.java 에 아래 코드를 추가


1
2
3
4
5
6
@RequestMapping(value = "/listCri", method=RequestMethod.GET)
    public void listAll(Criteria cri, Model model) throws Exception{
        logger.info("show list Page with Criteria................");
        
        model.addAttribute("list", service.listCriteria(cri));
    }
cs


view 페이지는 이전에 만들어둔 listAll 페이지를 그대로 복사해서 만들었다.


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
40
41
42
43
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ include file="/WEB-INF/views/include/header.jsp" %>
<%@ page session="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
 
<script>
    var result='${msg}';
    
    if(result == 'SUCCESS'){
        alert("처리가 완료되었습니다.");
    }
</script>
</head>
<body>
    <table class="table table-bordered">
        <tr>
            <th style="width: 10px">BNO</th>
            <th>TITLE</th>
            <th>WRITER</th>
            <th>REGDATE</th>
            <th style="width: 40px">VIEWCNT</th>
        </tr>
        <c:forEach items="${list}" var="boardVO">
        
            <tr>
                <td>${boardVO.bno}</td>
                <td><a href='/board/read?bno=${boardVO.bno}'>${boardVO.title}</a></td>
                <td>${boardVO.writer}</td>
                <td><fmt:formatDate pattern="yyyy-MM-dd HH:mm" value="${boardVO.regdate}"/></td>
                <td><span class="badge bg-red">${boardVO.viewcnt}</span></td>
            </tr>
            
        </c:forEach>
    </table>
</body>
</html>
<%@ include file="/WEB-INF/views/include/footer.jsp" %>
cs




3페이지를 보여주려면 주소 뒤에 ?page=3 이렇게 넣어주면 된다



만족스럽군..






본격적으로 화면 하단의 페이징 처리, 그러니까 페이지 번호가 출력되는 작업을 할 것이다.


화면에서 페이징 처리한 결과를 보여주기 위해서 필요한것.

1. 시작 페이지 번호 (startPage)

2. 끝 페이지 번호 (endPage)

3. 전체 데이터의 개수 (totalCount)

4. 이전 페이지 링크 (prev)

5. 이후 페이지 링크 (next)




로그도 잘 뜬다!!





'SPRING' 카테고리의 다른 글

0806 개발일기 게시판 검색기능  (0) 2018.08.07
0804 개발일기 페이징 마무리  (0) 2018.08.04
0731 개발일기 익셉션 페이징  (0) 2018.07.31
0730 개발일기  (0) 2018.07.30
0727 개발일기  (0) 2018.07.27
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
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
글 보관함