게시글 목록
PdsDAO.java
public ArrayList<PdsDTO> list() {
ArrayList<PdsDTO> list = null;
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" SELECT pdsno, wname, subject, filename, readcnt, regdate");
sql.append(" FROM tb_pds ");
sql.append(" ORDER BY regdate DESC ");
pstmt = con.prepareStatement(sql.toString());
rs = pstmt.executeQuery();
if(rs.next()) {
list = new ArrayList<>();
do {
PdsDTO dto = new PdsDTO();
dto.setPdsno(rs.getInt("pdsno"));
dto.setWname(rs.getString("wname"));
dto.setSubject(rs.getString("subject"));
dto.setFilename(rs.getString("filename"));
dto.setReadcnt(rs.getInt("readcnt"));
dto.setRegdate(rs.getString("regdate"));
list.add(dto); //list 저장
} while (rs.next());
}//if end
} catch (Exception e) {
System.out.println("목록실패" + e);
} finally {
DBClose.close(con, pstmt, rs);
}//end
return list;
}//list() end
pdsList.jsp
<%@page import="net.pds.PdsDTO"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsList.jsp-->
<h3>* 포토갤러리 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
ArrayList<PdsDTO> list = dao.list();
if(list==null) {
out.println("관련 자료 없음!");
} else {
out.println("전체 글 갯수 : " + list.size());
}
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

<%@page import="net.pds.PdsDTO"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsList.jsp-->
<h3>* 포토갤러리 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
ArrayList<PdsDTO> list = dao.list();
if(list==null) {
out.println("관련 자료 없음!");
} else {
out.println("전체 글 갯수 : " + list.size());
%>
<table class="table table-hover">
<thead>
<tr class="danger">
<th>제목</th>
<th>사진</th>
<th>조회수</th>
<th>작성자</th>
<th>작성일</th>
</tr>
</thead>
<tbody>
<%
for(int i=0; i<list.size(); i++) {
dto = list.get(i);
%>
<tr>
<td><%=dto.getSubject()%></td>
<td><img src="../storage/<%=dto.getFilename() %>" width="50"></td>
<td><%=dto.getReadcnt() %></td>
<td><%=dto.getWname() %></td>
<td><%=dto.getRegdate() %></td>
</tr>
<%
}//for end
%>
</tbody>
</table>
<%
}//if end
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

상세보기

제목을 클릭하면 상세보기 페이지로 가도록 링크를 걸었다. 이때 pdsno를 가져가도록 하였다.
pdsRead.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsRead.jsp-->
<h3>* 포토갤러리 상세보기 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
int pdsno = Integer.parseInt(request.getParameter("pdsno"));
dto = dao.read(pdsno);
if(dto==null) {
out.println("해당 글 없음!");
} else {
dao.incrementCnt(pdsno); //조회수 증가
}
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>
read()와 incrementCnt()를 만들자
PdsDAO.java
public PdsDTO read(int pdsno) {
PdsDTO dto = null;
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" SELECT pdsno, wname, subject, regdate, passwd, readcnt, filename, filesize ");
sql.append(" FROM tb_pds ");
sql.append(" WHERE pdsno=? ");
pstmt = con.prepareStatement(sql.toString());
pstmt.setInt(1, pdsno);
rs = pstmt.executeQuery(); //select문 실행 (행단위 커서)
if(rs.next()) {
dto = new PdsDTO();
dto.setPdsno(rs.getInt("pdsno"));
dto.setWname(rs.getString("wname"));
dto.setSubject(rs.getString("subject"));
dto.setRegdate(rs.getString("regdate"));
dto.setPasswd(rs.getString("passwd"));
dto.setReadcnt(rs.getInt("readcnt"));
dto.setFilename(rs.getString("filename"));
dto.setFilesize(rs.getLong("filesize"));
}//if end
} catch (Exception e) {
System.out.println("상세보기 실패 : " + e );
} finally {
DBClose.close(con, pstmt, rs);
}//end
return dto;
}//read() end
public void incrementCnt(int pdsno) {
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" UPDATE tb_pds ");
sql.append(" SET readcnt = readcnt + 1 ");
sql.append(" WHERE pdsno=? ");
pstmt = con.prepareStatement(sql.toString());
pstmt.setInt(1, pdsno);
pstmt.executeUpdate(); //sql문 실행
} catch (Exception e) {
System.out.println("조회수 증가 실패 : " + e);
} finally {
DBClose.close(con, pstmt);
}//end
}//incrementCnt() end
pdsRead.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsRead.jsp-->
<h3>* 포토갤러리 상세보기 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
int pdsno = Integer.parseInt(request.getParameter("pdsno"));
dto = dao.read(pdsno);
if(dto==null) {
out.println("해당 글 없음!");
} else {
dao.incrementCnt(pdsno); //조회수 증가
%>
<table class="table">
<tr>
<th>글제목</th>
<td><%=dto.getSubject() %></td>
</tr>
<tr>
<th>사진</th>
<td><img src="../storage/<%=dto.getFilename()%>"></td>
</tr>
<tr>
<th>파일크기</th>
<td><%=dto.getFilesize() %></td>
</tr>
<tr>
<th>작성자</th>
<td><%=dto.getWname() %></td>
</tr>
<tr>
<th>작성일</th>
<td><%=dto.getRegdate() %></td>
</tr>
</table>
<%
}//if end
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

파일크기를 알아보기 어려우니 파일크기가 KB나 MB로 출력되게 변경하자

'웹개발 교육 > jsp' 카테고리의 다른 글
[61일] jsp (38) - myweb 프로젝트(과제) (0) | 2022.10.24 |
---|---|
[61일] jsp (37) - myweb 프로젝트(첨부 게시판-삭제) (0) | 2022.10.24 |
[60일] jsp (35) - myweb 프로젝트(첨부 게시판) (0) | 2022.10.21 |
[59일] jsp (34) - myweb 프로젝트(첨부 게시판 기초) (0) | 2022.10.20 |
[58~9일] jsp (33) - myweb 프로젝트(아이디, 비밀번호 찾기) (0) | 2022.10.19 |
게시글 목록
PdsDAO.java
public ArrayList<PdsDTO> list() {
ArrayList<PdsDTO> list = null;
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" SELECT pdsno, wname, subject, filename, readcnt, regdate");
sql.append(" FROM tb_pds ");
sql.append(" ORDER BY regdate DESC ");
pstmt = con.prepareStatement(sql.toString());
rs = pstmt.executeQuery();
if(rs.next()) {
list = new ArrayList<>();
do {
PdsDTO dto = new PdsDTO();
dto.setPdsno(rs.getInt("pdsno"));
dto.setWname(rs.getString("wname"));
dto.setSubject(rs.getString("subject"));
dto.setFilename(rs.getString("filename"));
dto.setReadcnt(rs.getInt("readcnt"));
dto.setRegdate(rs.getString("regdate"));
list.add(dto); //list 저장
} while (rs.next());
}//if end
} catch (Exception e) {
System.out.println("목록실패" + e);
} finally {
DBClose.close(con, pstmt, rs);
}//end
return list;
}//list() end
pdsList.jsp
<%@page import="net.pds.PdsDTO"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsList.jsp-->
<h3>* 포토갤러리 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
ArrayList<PdsDTO> list = dao.list();
if(list==null) {
out.println("관련 자료 없음!");
} else {
out.println("전체 글 갯수 : " + list.size());
}
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

<%@page import="net.pds.PdsDTO"%>
<%@page import="java.util.ArrayList"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsList.jsp-->
<h3>* 포토갤러리 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
ArrayList<PdsDTO> list = dao.list();
if(list==null) {
out.println("관련 자료 없음!");
} else {
out.println("전체 글 갯수 : " + list.size());
%>
<table class="table table-hover">
<thead>
<tr class="danger">
<th>제목</th>
<th>사진</th>
<th>조회수</th>
<th>작성자</th>
<th>작성일</th>
</tr>
</thead>
<tbody>
<%
for(int i=0; i<list.size(); i++) {
dto = list.get(i);
%>
<tr>
<td><%=dto.getSubject()%></td>
<td><img src="../storage/<%=dto.getFilename() %>" width="50"></td>
<td><%=dto.getReadcnt() %></td>
<td><%=dto.getWname() %></td>
<td><%=dto.getRegdate() %></td>
</tr>
<%
}//for end
%>
</tbody>
</table>
<%
}//if end
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

상세보기

제목을 클릭하면 상세보기 페이지로 가도록 링크를 걸었다. 이때 pdsno를 가져가도록 하였다.
pdsRead.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsRead.jsp-->
<h3>* 포토갤러리 상세보기 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
int pdsno = Integer.parseInt(request.getParameter("pdsno"));
dto = dao.read(pdsno);
if(dto==null) {
out.println("해당 글 없음!");
} else {
dao.incrementCnt(pdsno); //조회수 증가
}
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>
read()와 incrementCnt()를 만들자
PdsDAO.java
public PdsDTO read(int pdsno) {
PdsDTO dto = null;
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" SELECT pdsno, wname, subject, regdate, passwd, readcnt, filename, filesize ");
sql.append(" FROM tb_pds ");
sql.append(" WHERE pdsno=? ");
pstmt = con.prepareStatement(sql.toString());
pstmt.setInt(1, pdsno);
rs = pstmt.executeQuery(); //select문 실행 (행단위 커서)
if(rs.next()) {
dto = new PdsDTO();
dto.setPdsno(rs.getInt("pdsno"));
dto.setWname(rs.getString("wname"));
dto.setSubject(rs.getString("subject"));
dto.setRegdate(rs.getString("regdate"));
dto.setPasswd(rs.getString("passwd"));
dto.setReadcnt(rs.getInt("readcnt"));
dto.setFilename(rs.getString("filename"));
dto.setFilesize(rs.getLong("filesize"));
}//if end
} catch (Exception e) {
System.out.println("상세보기 실패 : " + e );
} finally {
DBClose.close(con, pstmt, rs);
}//end
return dto;
}//read() end
public void incrementCnt(int pdsno) {
try {
con = dbopen.getConection();
sql = new StringBuilder();
sql.append(" UPDATE tb_pds ");
sql.append(" SET readcnt = readcnt + 1 ");
sql.append(" WHERE pdsno=? ");
pstmt = con.prepareStatement(sql.toString());
pstmt.setInt(1, pdsno);
pstmt.executeUpdate(); //sql문 실행
} catch (Exception e) {
System.out.println("조회수 증가 실패 : " + e);
} finally {
DBClose.close(con, pstmt);
}//end
}//incrementCnt() end
pdsRead.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ include file="ssi.jsp"%>
<%@ include file="../header.jsp"%>
<!-- 본문 시작 pdsRead.jsp-->
<h3>* 포토갤러리 상세보기 *</h3>
<p><a href="pdsForm.jsp">[사진올리기]</a></p>
<%
int pdsno = Integer.parseInt(request.getParameter("pdsno"));
dto = dao.read(pdsno);
if(dto==null) {
out.println("해당 글 없음!");
} else {
dao.incrementCnt(pdsno); //조회수 증가
%>
<table class="table">
<tr>
<th>글제목</th>
<td><%=dto.getSubject() %></td>
</tr>
<tr>
<th>사진</th>
<td><img src="../storage/<%=dto.getFilename()%>"></td>
</tr>
<tr>
<th>파일크기</th>
<td><%=dto.getFilesize() %></td>
</tr>
<tr>
<th>작성자</th>
<td><%=dto.getWname() %></td>
</tr>
<tr>
<th>작성일</th>
<td><%=dto.getRegdate() %></td>
</tr>
</table>
<%
}//if end
%>
<!-- 본문 끝 -->
<%@ include file="../footer.jsp"%>

파일크기를 알아보기 어려우니 파일크기가 KB나 MB로 출력되게 변경하자

'웹개발 교육 > jsp' 카테고리의 다른 글
[61일] jsp (38) - myweb 프로젝트(과제) (0) | 2022.10.24 |
---|---|
[61일] jsp (37) - myweb 프로젝트(첨부 게시판-삭제) (0) | 2022.10.24 |
[60일] jsp (35) - myweb 프로젝트(첨부 게시판) (0) | 2022.10.21 |
[59일] jsp (34) - myweb 프로젝트(첨부 게시판 기초) (0) | 2022.10.20 |
[58~9일] jsp (33) - myweb 프로젝트(아이디, 비밀번호 찾기) (0) | 2022.10.19 |