게시판 답글 관련... 작성중

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