페이지에 정보가 너무 많으면 처리가 늦어짐
→ 해결해보장
insert into tbl_board (title, writer, content)
(select title, writer, content from tbl_board);
20000개 정도 불러줍시당
select * from tbl_board order by bno desc;
확인
edit - preperence - sql editor - sql execution >
□ limit rows 체크 해제
보통 데이터 1억개 정도로 처리함
http://localhost:8088/board/listAll 실행해보자
처리속도가 매우 느림
서버가 조금더 많은 용량을 가지고 있어야함 → 서버 업그레이드
동시접속자가 왔을때 어떻게 해결을 할것이냐 -> 페이징처리!
페이징 처리
크게 세가지로 동작한다.
- 한 페이지에 원하는 만큼 데이터 가져와서 출력
- 페이지 하단에 '페이지 블럭'을 생성
- 본문/수정/삭제 등... -> 처리후 다시 리스트로 이동 시 기존정보 유지
1) 한 페이지에 원하는 만큼 데이터 가져와서 출력
Mapper
listAll 매핑 복사해서 수정~
0번 인덱스부터 10개를 들고오도록
데이터가 많으니 테스트파일에서 테스트해보고 연결해보자
DAO
DAOImpl
test>> DBConnectTest
테스트는 서버없어도 실행됨
Mapper
namespace 밑에
VO객체와 1:1로 매핑됨
content 데이터타입이 text인데, text는 1:1 매핑이 어려워서 콘솔에 안보임
→
resultMap을 준다.
limit 0,10에서 limit ${page}, 10으로 바꿈
DAO
실행하기전 매개변수를 받아오자
DAOImpl
DBConnecTest
domain >> Criteria 생성
페이징 처리를 위해서 생성한 객체
Mapper
DAO
DAOImpl
Test
Creteria
Test
밑에꺼 pageSize임
Mapper
Creteria
Test
Service
ServiceImpl
Controller
listAll-get 복사해서 수정
1페이지에 20개씩 나옴
자동으로 전달받아서 계산하고 처리해보자
Criteria 페이지에서 기본생성자가 1페이지당 10개씩이므로
'spring · spring boot' 카테고리의 다른 글
[spring] 전체글 개수 조회 (0) | 2023.12.22 |
---|---|
[Spring] 페이징 처리 (2) 하단부에 페이지 블럭 생성 (1) | 2023.12.22 |
getter setter를 사용하는 이유 (0) | 2023.12.22 |
[spring] 관점지향 프로그래밍(AOP)이란? (0) | 2023.12.18 |
[Spring] 게시판 만들기 - 본문보기 (0) | 2023.12.15 |