Spring-API(POST)

Walter Mitty·2022년 5월 30일
0

Spring

목록 보기
16/19

POST 생성
post방식으로 /api/courses 주소로 오면 createCourse 메소드가 실행된다. createCourse

private final CourseService courseService;
// PostMapping을 통해서, 같은 주소라도 방식이 다름을 구분합니다.
@PostMapping("/api/courses") 
public Course createCourse(@RequestBody CourseRequestDto requestDto) {
		// requestDto 는, 생성 요청을 의미합니다.
		// 강의 정보를 만들기 위해서는 강의 제목과 튜터 이름이 필요하잖아요?
    // 그 정보를 가져오는 녀석입니다.
		// 저장하는 것은 Dto가 아니라 Course이니, Dto의 정보를 course에 담아야 합니다.
		// 잠시 뒤 새로운 생성자를 만듭니다.
		Course course = new Course(requestDto);
		// JPA를 이용하여 DB에 저장하고, 그 결과를 반환합니다.
    return courseRepository.save(course);
}

Course 클래스 생성자 추가

public Course(CourseRequestDto requestDto) {
	this.title = requestDto.getTitle();
    this.tutor = requestDto.getTutor();
}

이런 느낌 !

POST의 요청 방식(ARC)

  • HEADERS: 정보를 같이 보낸다
    • Header name: Content-type
      -> 나 지금부처 데이터 같이 보낼 건데 그 녀석의 타입은 (아래)
    • Parameter value: application/json
      ->json이 인터넷에서 데이터가 왔다 갔다 하는 대중적인 형태이기 때문이다.
  • BODY
    • Body content type: application/json
      -> Headers에서 이미 해놔서 자동으로 뜬다
    • Editor: 우리가 생성할 데이터를 전달해준다.
      {
      필요한 데이터를 쓰기.
      "title": "앱개발 종합반",
      "tutor": "김건희"
      }

{
"id": 2,
"title": "앱개발 종합반",
"tutor": "김건희"
}

0개의 댓글