본문으로 바로가기

[JSP개발] 게시판 - 댓글 수정

category 코딩/JSP 2017. 1. 5. 09:00







1. 개요





 난 포스팅 :  [JSP개발] 게시판 - 댓글 삭제



댓글을 수정하는 기능을 구현할 것이다. 댓글 수정의 경우 화면은 댓글 답변을 작성하는 화면과 동일하다.


 JSP

  • BoardDetailForm.jsp : 상세보기 화면에는 댓글 수정과 관련된 코드를 추가한다.

  • CommentUpdateForm.jsp : 댓글 수정 화면이다.


 Java

  • CommentUpdateFormAction.java : 수정 화면을 띄우는 Action이다.

  • CommentUpdateAction.java : 댓글 수정 Action이다.

  • CommentDAO.java :  DAO에는 댓글 수정을 하는 메서드를 추가한다.




2. 소스 코드



■ BoardDetailForm.jsp 




[수정] 클릭 시 cmUpdateOpen( )을 호출하도록 한다. 호출 시 댓글의 글 번호를 전달한다.




스크립트에는 수정창을 여는 함수를 추가한다. 답글 창과 동일한 형식이다.





■ CommentUpdateFormAction.java 


CommentUpdateFormAction은 수정할 댓글 정보를 가져오고 수정 화면을 지정하는 작업을 한다.



  • 21줄 : 댓글 글 번호를 가져온다.

  • 24줄 : 글 번호를 이용하여 댓글 정보를 가져온다.

  • 27줄 : 댓글 정보를 request에 세팅한다.

  • 30줄 : 다음 화면으로 수정 화면을 지정한다.




■ CommentUpdateForm.jsp




수정 화면의 html 코드이다. 수정 화면은 댓글 답변 화면과 동일하다. 차점은 96줄에 수정 화면이 Open될 시 기존의 댓글 내용을 화면에 보여주는 부분뿐이다.




스크립트의 checkValue( ) 함수는 내용 입력 여부를 검사하고, 내용이 입력되었다면, Ajax를 이용해 서버로 데이터를 전달한다. 수정 시 전달할 데이터는 댓글 글 번호와 수정한 내용이다. 


그외 부분은 다른 포스팅에서 몇 번 언급한 Ajax와 동일하다.




서버로 정상적으로 데이터가 전달되고, 결과값을 받았다면 76~78줄이 실행된다. 먼저 상세 보기창 을 새로 고침 하고 이후 현재 수정 창을 닫는다.





■ CommentUpdateAction.java 




  • 20~21줄 : 글 번호와 수정한 댓글 내용을 가져온다.

  • 25~27줄 : 가져온 값들을 CommentBean에 세팅한다.

  • 29줄 : 수정을 위해 DAO에 CommentBean을 전달한다.

  • 35줄 : 수정이 정상적으로 되면 CommentUpdateForm으로 1을 전송한다.





■ CommentDAO.java 




DAO에는 수정 메서드만 추가한다. 





■ CommentCommand.properties


댓글 수정에 대한 명령어를 추가한다.





3. 실행 결과





댓글을 수정하기 위해 [수정] 버튼을 클릭한다.





수정 화면이 나타나면 댓글 내용을 수정한다. 그리고 등록을 누른다.





그러면 댓글이 수정된 것을 확인할 수 있다.




4. 소스코드 다운로드 (war 파일)


JSP_DEV.war




RSS구독 링크추가 트위터 이메일 구독