댓글기능 3

수정하고 버튼 클릭시 다시 데이터 보내기
<script>
// 모달 대화 상자에서 수정버튼 클릭
      $("#btn_replyModify").on("click", function(){

          let rno = $("#rno").val(); //댓글번호
          let reply = $("#reply").val(); // 댓글내용

          //자바스크립트 Object구문
          let replyObj = { rno:rno, reply:reply };
          // 서버측에 보낼 데이타를 JSON문법구조의 문자열로 변환작업.
          let replyStr = JSON.stringify(replyObj);

          console.log(replyStr);

          $.ajax({
            type: 'post',
            url: '/replies/new',
            headers: {
              "Content-Type" : "application/json", "X-HTTP-Method-Override" : "POST"
            },
            dataType: 'text', // 매핑주소의 리턴값 타입
            data: replyStr, // 전송데이타 {"bno":5120,"replyer":"user01","reply":"댓글테스트"}
            success: function(result) {
              if(result == "success"){
                alert("댓글 데이타 수정 성공");
              }
            }
          });
      });
</script>

SQL 연결해서 update하기

컨트롤러

	@PutMapping(value = "/modify/{rno}")
	public ResponseEntity<String> update(@PathVariable("rno") Long rno, @RequestBody ReplyVO vo){
		ResponseEntity<String> entity = null;
		
		service.modifyReply(vo);
		
		entity = new ResponseEntity<String>("success", HttpStatus.OK);
		
		return entity;
	}

xml

	<update id="update">
		update tbl_reply set reply = #{reply}, updatedate = sysdate
		where rno = #{rno}
	</update>

mapper, service

int update(ReplyVO vo);

int modifyReply(ReplyVO vo);

serviceImpl

	@Override
	public int modifyReply(ReplyVO vo) {
		// TODO Auto-generated method stub
		return mapper.update(vo);
	}

컨트롤러에서 put - ajax 작업

<script>
	  // 모달 대화 상자에서 수정버튼 클릭
      $("#btn_replyModify").on("click", function(){

          let rno = $("#rno").val(); //댓글번호
          let reply = $("#reply").val(); // 댓글내용

          //자바스크립트 Object구문
          let replyObj = { rno:rno, reply:reply };
          // 서버측에 보낼 데이타를 JSON문법구조의 문자열로 변환작업.
          let replyStr = JSON.stringify(replyObj);

          console.log(replyStr);

          $.ajax({
            type: 'put',
            url: '/replies/modify/' + rno,
            headers: {
              "Content-Type" : "application/json", "X-HTTP-Method-Override" : "PUT"
            },
            dataType: 'text', // 매핑주소의 리턴값 타입
            data: replyStr, // 전송데이타 {"bno":5120,"replyer":"user01","reply":"댓글테스트"}
            success: function(result) {
              if(result == "success"){
                alert("댓글 데이타 수정 성공");

                // Modal Dialog의 내용물 수정
                $("#replyTitle").html("New Reply");
                $("#rno").val("");
                $("#replyer").val("");
                $("#reply").val("");

                $(".btnModal").hide(); // 모달대화상자의 3개버튼을 모두 보이지 않게
                $("#btn_replySave").show();

                $("#replyModal").modal('hide');

                let url = "/replies/pages/" + bno + "/" + replyPage + ".json"; // 댓글목록및 페이징정보 요청주소

                getPage(url);
              }
            }
          });
      });
</script>

댓글남기기