IntelliJ ultimate
, SpringBoot
, Java 1.8
, Gradle
, jar
, JPA
, H2
들어가기에 앞서
이번 포스팅은 미리 프로젝트를 생성하고, 다음 의존성을 추가한 상태에서 시작합니다.
@PutMapping
수정할 데이터가 가지고 있는 id값과 수정할 데이터를 받아서 파라미터로 전달
파라미터 값을 Service의 update메소드로 싣어 보냄
결과값을 responseDto에 담아 클라이언트 쪽에 반환
@PutMapping("/api/board/{id}")
public BoardResponseDto update(@PathVariable Long id, @RequestBody BoardRequestDto requestDto){
return boardService.update(id, requestDto);
}
BoardRepository에서 해당 id값과 일치하는 데이터를 찾아 board에 저장
못찾을 경우 :
에러
찾는 경우 :Board Entity
의update
메소드에 입력받은 데이터를 파라미터로 전달
새로 정의된 board를 responseDto로 생성
@Transactional
public BoardResponseDto update(Long id, BoardRequestDto requestDto){
Board board = boardRepository.findById(id).orElseThrow(
() -> new IllegalArgumentException("아이디값이 없습니다")
);
board.update(requestDto);
return new BoardResponseDto(board);
}
@DeleteMapping
삭제할 데이터가 가지고 있는 id값을 url로 받아서 전달
id 값을 Service의 delete메소드에 싣어 보냄
결과값을 responseDto에 담아 클라이언트 쪽에 반환
@DeleteMapping("/api/board/{id}")
public BoardResponseDto delete(@PathVariable Long id){
return boardService.delete(id);
}
}
BoardRepository에서 해당 id값과 일치하는 데이터를 찾아 삭제
responseDto를 생성 해주어 리턴
public BoardResponseDto delete(Long id){
boardRepository.deleteById(id);
return new BoardResponseDto();
}