* 게시판 ---> content.jsp

 1. 글 목록에서 제목 클릭 시 해당 글의 고유번호(num)와 현재페이지값(currentPage)이 넘어가도록

int num=Integer.parseInt(request.getParameter("num"));    //넘어오는 값은 String이므로 형변환 필요
String nowpage=request.getParameter("page");
//page는 변수명으로 사용할 수 없으므로 비슷한 다른 이름으로 바꿀 것.


 2. 클릭한 제목의 조회수 증가

dao.count();
-----------------------------------
String sql="update board0 set readcount=readcount+1 where num=?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, num);
pstmt.executeUpdate();


 3. 상세정보 출력

dao.getContent(num)
------------------------------------
String sql="select * from board0 where num=?";
pstmt=con.prepareStatement(sql);
pstmt.setInt(1, num);
rs=pstmt.executeQuery();

rs 값을 DTO에 저장한 뒤 DTO를 리턴


 4. 내용의 줄바꿈
      <pre>내용</pre>
      String content=board.getContent().replace("\n","<br>");


 5. 목록으로 돌아갈때 있던 페이지로 돌아가기 (currentPage)

    onclick="location.href='list.jsp?page=<%=nowpage %>'"
 6. 글 수정, 삭제 추가

 



 * 글 수정  ---> updateForm.jsp, updatePro.jsp
 1. 글 작성의 폼을 기반으로, num, currentPage 값을 전달해 목록보기로 넘어갈 때 page값 넘기고 num으로 기존 값 불러옴

 2. 수정할 게시글의 값이 디폴트로 나타나도록 상세정보를 가져옴

   dao.getContent(num)


 3. num, page는 수정과 관련없지만 정보는 넘겨줘야 하니 hidden으로 정의해둠

   <input type="hidden" name="num" value="<%=num %>">
   <input type="hidden" name="page" value="<%=nowpage %>">


 4. textarea 태그는 value가 적용되지 않음 -> 태그 사이에 내용을 끼워야 함
    <textarea><%=board.getContent() %></textarea>


 5. 비밀번호는 기존값 불러오지 않고 사용자가 입력하도록 설정


 ---> updatePro.jsp
 6. 입력한 비밀번호와 기존 db의 비밀번호를 비교해 같을 경우 업데이트 실행.

  if(old.getPasswd().equals(board.getPasswd())){       //old=db에 저장된 pw, board=입력받은 pw
   int result= dao.update(board);


 7. 실행 후 수정한 게시글 content.jsp로 넘어가도록~
  location.href="content.jsp?num=<%=num%>&page=<%=nowpage%>"

 

 


 * 글 삭제 ---> deleteForm.jsp, deletePro.jsp
 1. content에서 num, page 값 form으로 넘기고 form에서 비번 입력받음
 2. num, passwd 값 pro로 넘기고 num을 매개변수로 db에 저장된 passwd값을 가져와 입력받은 passwd와 비교 -> 일치할 경우 글 삭제

 컨텐츠 상세정보 확인, 글 수정, 글 삭제 시 사용하는 getContent() -> 한 게시글의 상세정보를 가져오므로 다 이걸로 써먹을 수 있음 재사용성 굿굿

+ Recent posts