반응형
게시판에서 글 목록을 보여주려면 DdaDAO.java에 소스를 추가해야한다. 또한, 목록을 확인하기위한 디자인도 필요하므로 dda.jsp에 추가한다.
DdaDAO.java
public ArrayList<Dda> getList(int pageNumber){
String SQL="SELECT * from DDA where ddaID < ? AND ddaAvailable = 1 order by ddaID desc limit 10";//마지막 게시물 반환, 삭제가 되지 않은 글만 가져온다.
ArrayList<Dda> list = new ArrayList<Dda>();
try {
PreparedStatement pstmt=conn.prepareStatement(SQL);
pstmt.setInt(1, getNext()-(pageNumber-1)*10);
rs=pstmt.executeQuery();
while(rs.next()) {
Dda dda = new Dda();
dda.setDdaID(rs.getInt(1));
dda.setDdaTitle(rs.getString(2));
dda.setUserID(rs.getString(3));
dda.setDdaDate(rs.getString(4));
dda.setDdaContent(rs.getString(5));
dda.setDdaAvailable(rs.getInt(6));
list.add(dda);
}
} catch(Exception e) {
e.printStackTrace();
}
return list;
}
public boolean nextPage(int pageNumber) {
String SQL="SELECT * from DDA where ddaID < ? AND ddaAvailable =1";
try {
PreparedStatement pstmt=conn.prepareStatement(SQL);
pstmt.setInt(1, getNext()-(pageNumber-1)*10);
rs=pstmt.executeQuery();
if(rs.next()) {
return true;
}
} catch(Exception e) {
e.printStackTrace();
}
return false;
}
dda.jsp
<tbody>
<%
DdaDAO ddaDAO=new DdaDAO();
ArrayList<Dda> list = ddaDAO.getList(pageNumber);
for(int i=0;i<list.size();i++){
%>
<tr>
<td><%= list.get(i).getDdaID() %></td><%--현재 게시글에 대한 정보 --%>
<td><a href="view.jsp?ddaID=<%= list.get(i).getDdaID() %>"><%= list.get(i).getDdaTitle() %></a></td>
<td><%= list.get(i).getUserID() %></td>
<td><%= list.get(i).getDdaDate().substring(0,11)+list.get(i).getDdaDate().substring(11,13)+"시"+list.get(i).getDdaDate().substring(14,16)+"분" %></td>
</tr>
<%
}
%>
</tbody>
</table>
<%
if(pageNumber!=1){
%>
<a href="dda.jsp?pageNumber=<%=pageNumber - 1 %>" class="btn btn-primary btn-arrow-left">이전</a>
<%
} if(ddaDAO.nextPage(pageNumber+1)){
%>
<a href="dda.jsp?pageNumber=<%=pageNumber + 1 %>" class="btn btn-primary btn-arrow-left">다음</a>
<%
}%>
반응형
'CodeSiri > Project' 카테고리의 다른 글
[Mini Project 🚴🏻♀️] 12. 게시글 수정 및 삭제 기능 구현 & 회고 (0) | 2021.02.22 |
---|---|
[Mini Project 🚴🏻♀️] 11. 게시글 보기 기능 구현 (0) | 2021.02.22 |
[Mini Project 🚴🏻♀️] 09. 글쓰기 기능 구현 (0) | 2021.02.22 |
[Mini Project 🚴🏻♀️] 08. 게시판 데이터베이스 구축하기 (0) | 2021.02.22 |
[Mini Project 🚴🏻♀️] 07. 게시판 메인 페이지 디자인 (0) | 2021.02.22 |