2016. 9. 20. 17:57ㆍ프로그래밍/jsp
package ch13;
import java.sql.Date;
public class Board {
private int num;
private String writer;
private String subject;
private String content;
private String email;
private int readcount;
private String passwd;
private int ref; // 답변글
private int re_step; // 답변글
private int re_level; // 답변글
private String ip;
private Date reg_date;
private String delYn;
public String getDelYn() {
return delYn;
}
public void setDelYn(String delYn) {
this.delYn = delYn;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getWriter() {
return writer;
}
public void setWriter(String writer) {
this.writer = writer;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getReadcount() {
return readcount;
}
public void setReadcount(int readcount) {
this.readcount = readcount;
}
public String getPasswd() {
return passwd;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public int getRef() {
return ref;
}
public void setRef(int ref) {
this.ref = ref;
}
public int getRe_step() {
return re_step;
}
public void setRe_step(int re_step) {
this.re_step = re_step;
}
public int getRe_level() {
return re_level;
}
public void setRe_level(int re_level) {
this.re_level = re_level;
}
public String getIp() {
return ip;
}
public void setIp(String ip) {
this.ip = ip;
}
public Date getReg_date() {
return reg_date;
}
public void setReg_date(Date reg_date) {
this.reg_date = reg_date;
}
}
package ch13;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.sql.*;
import javax.naming.*;
public class BoardDao {
// singleton
private static BoardDao instance = new BoardDao();
private BoardDao() {}
public static BoardDao getInstance() {
return instance;
}
// Connection pool
private Connection getConnection() {
Connection conn = null;
try {
Context ctx = new InitialContext();
DataSource ds = (DataSource)
ctx.lookup("java:comp/env/jdbc/OracleDB");
conn = ds.getConnection();
}catch(Exception e) {
System.out.println(e.getMessage());
}
return conn;
}
public List<Board> select(int startRow, int endRow) {
List<Board> list = new ArrayList<>();
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
// String sql = "select * from board2 order by num desc";
// mysql
// select * from board2 order by num desc
// limt startRow - 1, 10(rowPerPage);
/* String sql="select * from (select a.*,rownum rn from "
+ "(select * from board2 order by num desc) a ) "
+ "where rn between ? and ?"; */
String sql="select * from (select a.*,rownum rn from ("
+ "select * from board2 order by ref desc,re_step)a)"
+ " where rn between ? and ?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, startRow);
pstmt.setInt(2, endRow);
rs = pstmt.executeQuery();
while(rs.next()) {
Board brd = new Board();
brd.setNum(rs.getInt("num"));
brd.setWriter(rs.getString("writer"));
brd.setSubject(rs.getString("subject"));
brd.setContent(rs.getString("content"));
brd.setEmail(rs.getString("email"));
brd.setReadcount(rs.getInt(6));
brd.setPasswd(rs.getString(7));
brd.setRef(rs.getInt(8));
brd.setRe_step(rs.getInt(9));
brd.setRe_level(rs.getInt(10));
brd.setIp(rs.getString(11));
brd.setReg_date(rs.getDate(12));
brd.setDelYn(rs.getString("delYn"));
list.add(brd);
}
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return list;
}
public int insert(Board board) {
int result = 0, number=0; Connection conn = null;
PreparedStatement pstmt = null; ResultSet rs = null;
String sql = "insert into board2 values(?,?,?,?,?,"
+ "0,?,?,?,?,?,sysdate,'n')";
String sql1 = "select nvl(max(num),0)+1 from board2";
String sqlChk = "select min(re_step) from board2 "
+ "where ref=? and re_step > ? and re_level <= ?";
String sqlStep = "select max(re_step) + 1 from board2 "
+ " where ref=?";
String sql2 = "update board2 set re_step = re_step+1 "
+ "where ref=? and re_step >= ?";
try{
conn = getConnection();
pstmt = conn.prepareStatement(sql1);
rs = pstmt.executeQuery();
if (rs.next()) number = rs.getInt(1);
pstmt.close();
rs.close();
if (board.getNum() != 0) {
pstmt = conn.prepareStatement(sqlChk);
pstmt.setInt(1, board.getRef());
pstmt.setInt(2, board.getRe_step());
pstmt.setInt(3, board.getRe_level());
rs = pstmt.executeQuery();
rs.next();
String step = rs.getString(1);
if (step != null) {
int temp_step = Integer.parseInt(step);
pstmt.close();
pstmt = conn.prepareStatement(sql2);
pstmt.setInt(1, board.getRef());
pstmt.setInt(2, temp_step);
pstmt.executeUpdate();
board.setRe_step(temp_step);
}else {
pstmt.close();
pstmt = conn.prepareStatement(sqlStep);
pstmt.setInt(1, board.getRef());
rs = pstmt.executeQuery();
rs.next();
board.setRe_step(rs.getInt(1));
rs.close();
}
pstmt.close();
board.setRe_level(board.getRe_level()+1);
} else { board.setRef(number); }
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, number);
pstmt.setString(2, board.getWriter());
pstmt.setString(3, board.getSubject());
pstmt.setString(4, board.getContent());
pstmt.setString(5, board.getEmail());
pstmt.setString(6, board.getPasswd());
pstmt.setInt(7, board.getRef());
pstmt.setInt(8, board.getRe_step());
pstmt.setInt(9, board.getRe_level());
pstmt.setString(10, board.getIp());
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try{
if (rs !=null) rs.close();
if (pstmt !=null) pstmt.close();
if (conn !=null) conn.close();
}catch(Exception e){}
}
return result;
}
public Board select(int num) {
Board brd = new Board();
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = "select * from board2 where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
rs = pstmt.executeQuery();
if (rs.next()) {
brd.setNum(rs.getInt("num"));
brd.setWriter(rs.getString("writer"));
brd.setSubject(rs.getString("subject"));
brd.setContent(rs.getString(4));
brd.setEmail(rs.getString(5));
brd.setReadcount(rs.getInt(6));
brd.setPasswd(rs.getString(7));
brd.setRef(rs.getInt(8));
brd.setRe_step(rs.getInt(9));
brd.setRe_level(rs.getInt(10));
brd.setIp(rs.getString(11));
brd.setReg_date(rs.getDate(12));
} else brd = null;
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return brd;
}
public void updateHit(int num) {
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
String sql="update board2 set readcount = readcount + 1 "
+ " where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
}
public int update(Board board) {
Connection conn = null; PreparedStatement pstmt = null;
int result = 0;
String sql="update board2 set subject=?,writer=?,"
+ "passwd=?,email=?,content=? where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, board.getSubject());
pstmt.setString(2, board.getWriter());
pstmt.setString(3, board.getPasswd());
pstmt.setString(4, board.getEmail());
pstmt.setString(5, board.getContent());
pstmt.setInt(6, board.getNum());
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return result;
}
public int delete(int num) {
Connection conn = null; PreparedStatement pstmt = null;
int result = 0;
// String sql="delete from board2 where num=?";
String sql="update board2 set delYn='y' where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return result;
}
public int total() {
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null; int total = 0;
String sql = "select count(*) from board2";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if (rs.next()) {
total = rs.getInt(1);
}
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return total;
}
}
package ch13;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
import javax.sql.*;
import javax.naming.*;
public class BoardDao2 {
// singleton
private static BoardDao2 instance = new BoardDao2();
private BoardDao2() {}
public static BoardDao2 getInstance() {
return instance;
}
// Connection pool
private Connection getConnection() {
Connection conn = null;
try {
Context ctx = new InitialContext();
DataSource ds = (DataSource)
ctx.lookup("java:comp/env/jdbc/OracleDB");
conn = ds.getConnection();
}catch(Exception e) {
System.out.println(e.getMessage());
}
return conn;
}
public List<Board> select(int startRow, int endRow) {
List<Board> list = new ArrayList<>();
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
// String sql = "select * from board1 order by num desc";
// mysql
// select * from board1 order by num desc
// limt startRow - 1, 10(rowPerPage);
/* String sql="select * from (select a.*,rownum rn from "
+ "(select * from board1 order by num desc) a ) "
+ "where rn between ? and ?"; */
String sql="select * from (select a.*,rownum rn from ("
+ "select * from board1 order by ref desc,re_step)a)"
+ " where rn between ? and ?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, startRow);
pstmt.setInt(2, endRow);
rs = pstmt.executeQuery();
while(rs.next()) {
Board brd = new Board();
brd.setNum(rs.getInt("num"));
brd.setWriter(rs.getString("writer"));
brd.setSubject(rs.getString("subject"));
brd.setContent(rs.getString("content"));
brd.setEmail(rs.getString("email"));
brd.setReadcount(rs.getInt(6));
brd.setPasswd(rs.getString(7));
brd.setRef(rs.getInt(8));
brd.setRe_step(rs.getInt(9));
brd.setRe_level(rs.getInt(10));
brd.setIp(rs.getString(11));
brd.setReg_date(rs.getDate(12));
brd.setDelYn(rs.getString("delYn"));
list.add(brd);
}
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return list;
}
public int insert(Board board) {
Connection conn = null; PreparedStatement pstmt = null;
int result = 0, number = 0; ResultSet rs = null;
// num을 1씩 증가 시키기 위한 sql
String sqlNum = "select nvl(max(num),0)+1 from board1";
String sql="insert into board1 "
+ "values(?,?,?,?,?,0,?,?,?,?,?,sysdate,'n')";
String sqlUp="update board1 set re_step=re_step+1 "
+ " where ref=? and re_step > ?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sqlNum);
rs = pstmt.executeQuery();
rs.next();
number = rs.getInt(1);
pstmt.close();
if (board.getNum() != 0) {
pstmt = conn.prepareStatement(sqlUp);
pstmt.setInt(1, board.getRef());
pstmt.setInt(2, board.getRe_step());
pstmt.executeUpdate();
pstmt.close();
board.setRe_level(board.getRe_level()+1);
board.setRe_step(board.getRe_step()+1);
} else { board.setRef(number); }
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, number);
pstmt.setString(2, board.getWriter());
pstmt.setString(3, board.getSubject());
pstmt.setString(4, board.getContent());
pstmt.setString(5, board.getEmail());
pstmt.setString(6, board.getPasswd());
pstmt.setInt(7, board.getRef());
pstmt.setInt(8, board.getRe_step());
pstmt.setInt(9, board.getRe_level());
pstmt.setString(10, board.getIp());
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return result;
}
public Board select(int num) {
Board brd = new Board();
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = "select * from board1 where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
rs = pstmt.executeQuery();
if (rs.next()) {
brd.setNum(rs.getInt("num"));
brd.setWriter(rs.getString("writer"));
brd.setSubject(rs.getString("subject"));
brd.setContent(rs.getString(4));
brd.setEmail(rs.getString(5));
brd.setReadcount(rs.getInt(6));
brd.setPasswd(rs.getString(7));
brd.setRef(rs.getInt(8));
brd.setRe_step(rs.getInt(9));
brd.setRe_level(rs.getInt(10));
brd.setIp(rs.getString(11));
brd.setReg_date(rs.getDate(12));
} else brd = null;
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return brd;
}
public void updateHit(int num) {
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null;
String sql="update board1 set readcount = readcount + 1 "
+ " where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
}
public int update(Board board) {
Connection conn = null; PreparedStatement pstmt = null;
int result = 0;
String sql="update board1 set subject=?,writer=?,"
+ "passwd=?,email=?,content=? where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, board.getSubject());
pstmt.setString(2, board.getWriter());
pstmt.setString(3, board.getPasswd());
pstmt.setString(4, board.getEmail());
pstmt.setString(5, board.getContent());
pstmt.setInt(6, board.getNum());
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return result;
}
public int delete(int num) {
Connection conn = null; PreparedStatement pstmt = null;
int result = 0;
// String sql="delete from board1 where num=?";
String sql="update board1 set delYn='y' where num=?";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
pstmt.setInt(1, num);
result = pstmt.executeUpdate();
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return result;
}
public int total() {
Connection conn = null; PreparedStatement pstmt = null;
ResultSet rs = null; int total = 0;
String sql = "select count(*) from board1";
try{conn = getConnection();
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if (rs.next()) {
total = rs.getInt(1);
}
}catch(Exception e) { System.out.println(e.getMessage());
}finally {
try {if (rs != null) rs.close();
if (pstmt != null) pstmt.close();
if (conn != null) conn.close();
}catch(Exception e) {}
}
return total;
}
}
@CHARSET "UTF-8";
table { width: 100%; background-color: #E1FFE1;
border: 1px solid blue; }
th { background-color: #FFE6EB; padding: 20px; }
th, td { border-bottom: 1px dotted blue; }
td { padding: 15px; }
body { background-color: #FAE6B9; font-family: 굴림체;
font-size: 1em; }
td:hover { background-color: green; color: white; }
caption { font-size: 25px; line-height: 150%; }
css작성
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*"%>
<!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></head><body>
<% int num = Integer.parseInt(request.getParameter("num"));
String pageNum = request.getParameter("pageNum");
BoardDao bd = BoardDao.getInstance();
int result = bd.delete(num);
if (result > 0) { %>
<script type="text/javascript">
alert("삭제 됐네");
location.href = "list.jsp?pageNum=<%=pageNum%>";
</script>
<% } else { %>
<script type="text/javascript">
alert("헐 안되네");
history.go(-1);
</script>
<% } %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*"%>
<!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>
<link rel="stylesheet" type="text/css" href="comm.css">
<script type="text/javascript">
function chk() {
if (frm.passwd.value != frm.dbPass.value) {
alert("암호가 다릅니다"); frm.passwd.focus();
frm.passwd.value = ""; return false; }
}
</script></head><body>
<% int num = Integer.parseInt(request.getParameter("num"));
String pageNum=request.getParameter("pageNum");
BoardDao bd = BoardDao.getInstance();
Board brd = bd.select(num);
String dbPass = brd.getPasswd();
%>
<form action="delete.jsp" name="frm"
method="post" onsubmit="return chk()">
<input type="hidden" name="num" value="<%=num%>">
<input type="hidden" name="dbPass" value="<%=dbPass%>">
<input type="hidden" name="pageNum" value="<%=pageNum%>">
<table><caption>게시글 삭제</caption>
<tr><th>암호</th>
<td><input type="password" name="passwd"></td></tr>
<tr><th colspan="2"><input type="submit" value="확인">
<input type="button" value="목록"
onclick="location.href='list.jsp?pageNum=<%=pageNum%>'"></th></tr>
</table>
</form>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!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>
</head>
<body>
<script type="text/javascript">
location.href = "list.jsp";
</script>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*"%>
<!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></head><body>
<% BoardDao bd = BoardDao.getInstance();
for(int i = 0; i < 8;i++) {
Board brd = new Board();
brd.setNum(0); brd.setRef(0);
brd.setRe_level(0); brd.setRe_step(0);
brd.setWriter("길동"+i);
brd.setSubject("연휴끝"+i);
brd.setContent("야호! 신난다 공부해서..."+i);
brd.setEmail("k"+i+"@k.com");
brd.setPasswd("1");
brd.setIp(request.getRemoteAddr());
bd.insert(brd);
}
%>
입력 끝
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*,java.util.*" %>
<!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>
<link rel="stylesheet" type="text/css" href="comm.css"></head><body>
<table><caption>게시판 목록</caption>
<tr><th>번호</th><th>제목</th><th>작성자</th><th>이메일</th>
<th>조회수</th><th>아이피</th><th>적성일</th></tr>
<% String pageNum = request.getParameter("pageNum");
if (pageNum == null || pageNum.equals(""))
pageNum = "1";
int currentPage = Integer.parseInt(pageNum);
int rowPerPage = 10;
int pagePerBlk = 10;
int startRow = (currentPage - 1) * rowPerPage + 1;
int endRow = startRow + rowPerPage - 1;
BoardDao bd = BoardDao.getInstance();
List<Board> list = bd.select(startRow, endRow);
int total = bd.total();
int totalPage = (int)Math.ceil((double)total/rowPerPage);
int startPage=(currentPage - 1) / pagePerBlk * pagePerBlk + 1;
int endPage = startPage + pagePerBlk - 1;
if (endPage > totalPage) endPage = totalPage;
int rowCnt = total - startRow + 1;
if (total != 0) {
for (Board brd : list) { %>
<tr><td><%=rowCnt-- %></td>
<% if (brd.getDelYn().equals("y")) { %>
<td colspan="6">삭제된 글입니다</td>
<% } else { %>
<td><% if (brd.getRe_level() > 0) { %>
<img alt="" src="images/level.gif"
width="<%=brd.getRe_level()*5%>" height="2">
<img alt="" src="images/re.gif">
<% } %>
<% if (brd.getReadcount() > 20)
out.println("<img src='images/hot.gif'>"); %>
<a href="view.jsp?num=<%=brd.getNum()%>&pageNum=<%=currentPage%>"
title="<%=brd.getContent()%>">
<%=brd.getSubject()%></a></td>
<td><%=brd.getWriter()%></td><td><%=brd.getEmail() %></td>
<td><%=brd.getReadcount()%></td><td><%=brd.getIp() %></td>
<td><%=brd.getReg_date() %></td>
<% } %>
</tr>
<% }
} else { %>
<tr><td colspan="7">데이터가 없습니다</td></tr>
<% } %>
<tr><th colspan="7"><a href="writeForm.jsp?pageNum=<%=currentPage%>">쓰기</a></th></tr>
</table><div align="center">
<% if (startPage > pagePerBlk ) { %>
<a href="list.jsp?pageNum=<%=endPage-pagePerBlk%>">[이전]</a>
<% } %>
<% for (int i = startPage ; i <= endPage; i++) { %>
<a href="list.jsp?pageNum=<%=i%>">[<%=i%>]</a>
<% } %>
<% if (endPage < totalPage ) { %>
<a href="list.jsp?pageNum=<%=startPage+pagePerBlk%>">[다음]</a>
<% } %>
</div></body></html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*" %>
<!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></head><body>
<% request.setCharacterEncoding("utf-8"); %>
<jsp:useBean id="board" class="ch13.Board"/>
<jsp:setProperty property="*" name="board"/>
<% String pageNum = request.getParameter("pageNum");
BoardDao bd = BoardDao.getInstance();
// board.setIp(request.getRemoteAddr());
int result = bd.update(board);
if (result > 0) { %>
<script type="text/javascript">
alert("수정 되었습니다");
location.href = "list.jsp?pageNum=<%=pageNum%>";
</script>
<% } else { %>
<script type="text/javascript">
alert("으이그");
history.back();
</script>
<% } %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*" %>
<!DOCTYPE html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="comm.css"></head><body>
<% int num = Integer.parseInt(request.getParameter("num"));
String pageNum = request.getParameter("pageNum");
BoardDao bd = BoardDao.getInstance();
Board brd = bd.select(num); // 데이터 가져오기
if (brd != null) { %>
<form action="update.jsp" method="post">
<input type="hidden" name="num" value="<%=brd.getNum()%>">
<input type="hidden" name="pageNum" value="<%=pageNum%>">
<table><caption>상세 내용</caption>
<tr><th>제목</th><td><input type="text" name="subject"
required="required" value="<%=brd.getSubject()%>"></td>
<th>작성자</th><td><input type="text" name="writer"
required="required" value="<%=brd.getWriter()%>"></td></tr>
<tr><th>이메일</th><td><input type="email" name="email"
required="required" value="<%=brd.getEmail()%>"></td>
<th>암호</th><td><input type="password" name="passwd"
required="required" value="<%=brd.getPasswd()%>"></td></tr>
<tr><th>아이피</th><td><%=brd.getIp()%></td>
<th>작성일</th><td><%=brd.getReg_date()%></td></tr>
<tr><th>내용</th><td colspan="3"><pre><textarea rows="5"
cols="50" name="content">
<%=brd.getContent()%></textarea></pre></td></tr>
<tr><th colspan="4"><input type="submit" value="확인"></th></tr>
</table>
</form><% } %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*" %>
<!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>
<link rel="stylesheet" type="text/css" href="comm.css"></head><body>
<% int num = Integer.parseInt(request.getParameter("num"));
String pageNum=request.getParameter("pageNum");
BoardDao bd = BoardDao.getInstance();
Board brd = bd.select(num); // 데이터 가져오기
if (brd != null) {
bd.updateHit(num); // 조회수 증가
%>
<table><caption>상세 내용</caption>
<tr><th>제목</th><td><%=brd.getSubject()%></td>
<th>작성자</th><td><%=brd.getWriter()%></td></tr>
<tr><th>이메일</th><td><%=brd.getEmail()%></td>
<th>조회수</th><td><%=brd.getReadcount()+1%></td></tr>
<tr><th>아이피</th><td><%=brd.getIp()%></td>
<th>작성일</th><td><%=brd.getReg_date()%></td></tr>
<tr><th>내용</th><td colspan="3"><pre>
<%=brd.getContent()%></pre></td></tr>
<tr><th colspan="4"><input type="button" value="목록"
onclick="location.href='list.jsp?pageNum=<%=pageNum%>'">
<input type="button" value="수정"
onclick="location.href='updateForm.jsp?num=<%=brd.getNum()%>&pageNum=<%=pageNum%>'">
<input type="button" value="삭제"
onclick="location.href='deleteForm.jsp?num=<%=brd.getNum()%>&pageNum=<%=pageNum%>'">
<form action="writeForm.jsp" id="f">
<input type="hidden" name="num" value="<%=brd.getNum()%>">
<input type="hidden" name="ref" value="<%=brd.getRef()%>">
<input type="hidden" name="re_level" value="<%=brd.getRe_level()%>">
<input type="hidden" name="re_step" value="<%=brd.getRe_step()%>">
<input type="hidden" name="pageNum" value="<%=pageNum%>">
<input type="submit" value="답변">
</form>
</th>
</table>
<% } %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" import="ch13.*" %>
<!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></head><body>
<% request.setCharacterEncoding("utf-8"); %>
<jsp:useBean id="board" class="ch13.Board"/>
<jsp:setProperty property="*" name="board"/>
<% String pageNum = request.getParameter("pageNum");
board.setIp(request.getRemoteAddr());
BoardDao bd = BoardDao.getInstance();
int result = bd.insert(board);
if (result > 0) { %>
<script type="text/javascript">
alert("입력 성공");
location.href="list.jsp?pageNum=<%=pageNum%>";
</script>
<% } else { %>
<script type="text/javascript">
alert("똑바로 해"); history.go(-1);
</script>
<% } %>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="comm.css"></head><body>
<%
int num=0, ref=0, re_level=0, re_step=0;
String pageNum = request.getParameter("pageNum");
// 답변글
if (request.getParameter("num") != null) {
num = Integer.parseInt(request.getParameter("num"));
ref = Integer.parseInt(request.getParameter("ref"));
re_level=Integer.parseInt(request.getParameter("re_level"));
re_step=Integer.parseInt(request.getParameter("re_step"));
}
%>
<form action="write.jsp" method="post">
<input type="hidden" name="num" value="<%=num%>">
<input type="hidden" name="ref" value="<%=ref%>">
<input type="hidden" name="re_level" value="<%=re_level%>">
<input type="hidden" name="re_step" value="<%=re_step%>">
<input type="hidden" name="pageNum" value="<%=pageNum%>">
<table><caption>게시판 글쓰기</caption>
<tr><th>제목</th><td><input type="text" name="subject"
required="required"></td></tr>
<tr><th>작성자</th><td><input type="text" name="writer"
required="required"></td></tr>
<tr><th>이메일</th><td><input type="email" name="email"
required="required"></td></tr>
<tr><th>암호</th><td><input type="password" name="passwd"
required="required"></td></tr>
<tr><th>내용</th><td><textarea rows="5" cols="39"
name="content"></textarea></td></tr>
<tr><th colspan="2"><input type="submit" value="확인">
<input type="button" value="목록"
onclick="location.href='list.jsp'"> </th></tr>
</table>
</form>
</body>
</html>
'프로그래밍 > jsp' 카테고리의 다른 글
작성중인 문서입니다! (0) | 2016.09.07 |
---|---|
html를 이용한 Mysql DB추가 (0) | 2016.09.07 |
html에서 부서코드를 입력받아 Mysql 실행 (0) | 2016.09.06 |
mysql 연동하기 (0) | 2016.09.06 |
피보나치 수열 합산! (0) | 2016.09.01 |