1) BoardService.java 수정하기
: [1. 함수선언] updateBoard 함수 선언
@Service
public interface BoardService {
Board createBoard(Map<String, Object> params);
Board updateBoard(Map<String, Object> params);
List<Board> listBoard();
Board detailBoard(Integer id);
}
2) BoardServiceImpl.java 수정하기
: [2. 함수구현] updateBoard 함수 override하고 기능 구현
@Override
public Board updateBoard(Map<String, Object> params) {
Board board = boardRepository.findById(Integer.parseInt(params.get("id") + "")).orElseThrow(
() -> new RuntimeException("")
);
board.setTitle(params.get("title").toString());
board.setContent(params.get("content").toString());
board.setAuthor(params.get("author").toString());
boardRepository.save(board);
return null;
}
3) deatil.html 파일 수정하기
(1) detail_board()
function update_board(){
$.ajax({
url : "/api/board/update",
type : "GET",
contentType : 'application/json; charset=utf-8',
data : {
id: final_id,
title: $("#detail_board_title").val(),
content: $("#detail_board_content").val(),
author: $("#detail_board_author").val(),
},
cache : false,
success : (obj_data, status, xhr) => {
alert("수정 완료!");
},
error: (obj_data, status, error) => {
alert("error!!");
alert(JSON.stringify(obj_data));
}
})
}
4) BoardRestController.java 내용 수정하기
: service에서 제공하는 updateBoard로 기능 제공하게끔 수정.
@GetMapping({"/update"})
public Board update(@RequestParam Map<String, Object> params) {
return boardService.updateBoard(params);
}
1) BoardService.java 수정하기
: [1. 함수선언] deleteBoard 함수 선언
@Service
public interface BoardService {
Board createBoard(Map<String, Object> params);
Board updateBoard(Map<String, Object> params);
List<Board> listBoard();
Board detailBoard(Integer id);
Board deleteBoard(Integer id);
}
2) BoardServiceImpl.java 수정하기
: [2. 함수구현] deleteBoard 함수 override하고 기능 구현
@Override
public Board deleteBoard(Integer id) {
Board board = boardRepository.findById(id).orElseThrow(
() -> new RuntimeException("")
);
boardRepository.delete(board);
return null;
}
3) deatil.html 파일 수정하기
(1) 글 삭제 버튼 추가하기
<button onclick="delete_board()">
글 삭제
</button>
(2) delete_board()
function delete_board() {
$.ajax({
url: "/api/board/delete",
type: "GET",
contentType: 'application/json; charset=utf-8',
data: {
id: final_id
},
cache: false,
success: (obj_data, status, xhr) => {
// alert(JSON.stringify(obj_data));
alert("삭제되었습니다!");
},
error: (obj_data, status, xhr) => {
alert("error!!");
alert(JSON.stringify(obj_data));
}
});
}
4) BoardRestController.java 내용 수정하기
: service에서 제공하는 deleteBoard 기능 제공하게끔 수정.
@GetMapping({"/delete"})
public Board delete(@RequestParam Map<String, Object> params) {
return boardService.deleteBoard(Integer.parseInt(params.get("id") + ""));
}