Post 는 생성 요청
@PostMapping("/api/courses")
public Course createCourse(@RequestBody CourseRequestDto requestDto) {
Course course = new Course(requestDto);
return courseRepository.save(course);
}
** Post 시 @RequestBody 형태로 주고 받을 것.
Spring Post 방식은 정해져있다.
어떤 데이터를 보낼지 보내줘야하기 때문에
post방식에서 데이터를 전달하는 방식은 엄격하게 정해져 있다.
이해보다는 암기하자!
ARC에서
POST 방식은 HEADERS 에서 NAME "Content-Type", Value = "application/json"
json형식으로 전달하는 이유는
인터넷에서 통신하는데에 대중적이기 때문에
GET방식으로 데이터를 전달 받을 때도 json 형태도 받으니
같은 형태로 보내주는 것이 합리적이기 때문에
json형태로 데이터를 삽입하는 방법은
ARC에서 BODY 를 클릭!
json형태로 데이터 삽입하기
{
"title":"앱개발 종합반",
"tutor":"김건희"
}
@PutMapping("/api/courses/{id}")
public Long updateCourse(@PathVariable Long id, @RequestBody CourseRequestDto requestDto) {
return courseService.update(id, requestDto);
}
@PutMapping("/api/course/{id}")
{id} 는 유동적인 데이터가 들어갈 때 {}로 묶어 사용한다.
아래 Long id 와 같은 타입 명과 맞춰주면 되는 부분.
post 방식과 비슷하게
ARC에서 GET으로 두고
http://localhost:1040/api/courses/1 id값까지 작성한 후 send
HEADER NAME Content-Type Value application/json
delete는 퀴즈로 알아보았다.
@DeleteMapping("/api/courses/{id}")
public Long deleteCourse(@PathVariable Long id) {
courseRepository.deleteById(id);
return id;
}