목록
목차
구성
#1 . 총 페이지 수 설정
//--전체 회원 수
public int getTotalUser() throws SQLException{
try {
con=DBUtil.getCon();
String sql="select count(idx) from member ";
ps=con.prepareStatement(sql);
rs=ps.executeQuery();
boolean b=rs.next();//있으면 true반환
int cnt=0;
if(b) {
cnt=rs.getInt(1);//index1번 지정해서 꺼내옴
}
return cnt;
} finally {
close();
}
}
회원 정보 테이블에서 idx(primary key) 값을 이용해 전체 회원 수 구하기
int totalCount = userDao.getTotalUser();
전체 회원 수 호출
int pageSize = 10;
한 페이지당 보여줄 목록 개수를 10개로 지정
int pageCount = 0;
총 페이지 수를 담아줄 변수 설정
pageCount = (totalCount-1)/pageSize+1;
총 페이지 수 = (전체 회원 수 -1) / 한 페이지당 보여줄 목록 개수 +1
ex)
전체 회원 수 = 29
29 - 1 = 28
한 페이지당 보여줄 목록 개수 = 10
28 / 10 = 2 (int 값은 소수점을 반환하지 않고 나눈 값이 1보다 작을 경우 0을 반환)
2 + 1 = 3
총 페이지 수 = 3
<b>총 회원수</b>:<span class="text-primary"><%=totalCount %> 명</span>
전체 회원 수(totalCount) 출력
for(int i=1; i<=pageCount; i++){
[<a href="list.jsp?cpage=<%=i%>"> <%=i%> </a>]
}
총 페이지 수(pageCount) 출력
해당 페이지에 링크를 걸고 보여줄 페이지 번호 값(cpage) 전달
#2 . 해당하는 페이지의 회원 정보 출력
int end = cpage * pageSize;
해당 페이지에 보여줄 회원의 마지막 값 설정
(마지막 값 = 클릭한 페이지 * 10)
ex)
2페이지 클릭 시
2 * 10 = 20
20번째 까지의 회원
int start = end - pageSize +1;
해당 페이지에 보여줄 회원의 첫 번째 값 설정
(첫 번째 값 = 20 - 10 + 1)
11번째 부터의 회원
//--보여줄 회원의 정보 구하기
public List<UserVO> listUser(int start, int end) throws SQLException{
try {
con=DBUtil.getCon();
String sql="select * from("
+ " select rownum rn, a.* from(" //조회한 회원의 순번, 모든 회원 정보
+ " (select * from member order by idx desc) a)" //모든 회원 정보
+ " )"
+ " where rn between ? and ?"; //start값 부터 end 값의 정보
ps= con.prepareStatement(sql);
ps.setInt(1, start);
ps.setInt(2, end);
rs=ps.executeQuery();
List<UserVO> arr=makeList(rs);
return arr;
}finally {
close();
}
}
1. 모든 회원 정보 구하기
2. 모든 회원 정보의 순번과 정보 구하기
3. start 값 부터 end 값인 순번의 정보 구하기
List<UserVO> userList = userDao.listUser(start, end);
위에서 구한 start, end 값을 이용해 페이지에 출력해줄 회원 정보 가져오기
for(UserVO user: userList){
String str=(user.getMstate()==0)? "일반회원":(user.getMstate()==1)? "정지회원": "탈퇴회원";
%>
<tr>
<th><%=user.getIdx() %></th>
<th><%=user.getName() %></th>
<th><%=user.getUserid() %></th>
<th><%=user.getAllHp() %></th>
<th class="txt<%=user.getMstate() %>"><%=str %></th>
<td><a href="edit.jsp?idx=<%=user.getIdx()%>">수정</a>
<a href="delete.jsp?idx=<%=user.getIdx()%>">삭제</a></td>
</tr>
<%
해당 페이지의 회원 정보 출력
'기능 학습 > 쇼핑몰 구현' 카테고리의 다른 글
[쇼핑몰 구현] 7. MyPage (본인 정보 수정) 구현 (0) | 2021.07.23 |
---|---|
[쇼핑몰 구현] 6. Session을 이용한 로그인 로그아웃 구현 (0) | 2021.07.21 |
[쇼핑몰 구현] 5. 회원정보 검색 (0) | 2021.07.21 |
[쇼핑몰 구현] 4. 회원정보 수정 삭제 (0) | 2021.07.21 |
[쇼핑몰 구현] 3. 회원목록 구현 (0) | 2021.07.21 |