[백엔드 강의] 맛집 API 정의하기

이나형·2024년 8월 30일
0
post-thumbnail

이 포스팅은 인프런 강의 중 쥬쥬님의 '쥬쥬와 함께 하루만에 시작하는 백엔드 - 스프링, 도커, AWS' 에 올라온
코드 및 사진 이미지 모두 해당 강의를 참고하였습니다.

(인프런)쥬쥬와 함께 하루만에 시작하는 백엔드 - 스프링, 도커, AWS링크


오늘은 저번에 적었던 요구사항 명세서를 바탕으로
Spring Boot를 사용하여 간단한 맛집 관리 API를 정의해보았다. 이 예제에서는 RESTful한 구조를 따라 맛집의 정보를 가져오거나, 수정, 삭제하는 등의 다양한 기능을 제공한다.

맛집 API 정의하기


맛집 리스트 가져오기 API

@GetMapping("/restaurants")
public String getRestaurants(){
    return "This is getRestaurants";
}

이 API는 모든 맛집 리스트를 가져오는 역할을 한다. http://localhost:8080/restaurants 경로로 요청을 보내면, 서버는 등록된 모든 맛집 정보를 반환하게 된다. 현재는 단순한 문자열을 반환하지만, 실제 응용에서는 데이터베이스에 저장된 맛집 리스트를 JSON 형식으로 반환하게 된다.



맛집 정보 가져오기 API

@GetMapping("/restaurant/{restaurantId}")
public String getRestaurant(
        @PathVariable Long restaurantId
){
    return "This is getRestaurant" + restaurantId;
}

이 API는 특정 맛집의 상세 정보를 가져오는 역할을 한다. restaurantId라는 경로 변수를 통해 원하는 맛집의 고유 ID를 받아, 해당 맛집의 정보를 반환한다. 예를 들어, http://localhost:8080/restaurant/1 요청을 보내면, ID가 1인 맛집의 정보를 반환하게 된다.



맛집 생성 API

@PostMapping("/restaurant")
public String createRestaurant(){
    return "This is createRestaurant";
}

맛집을 새로 생성할 때 사용하는 API다. http://localhost:8080/restaurant 경로로 요청을 보내면, 새로운 맛집 정보가 서버에 저장된다. 실제 구현에서는 요청 본문에 맛집의 세부 정보를 담아 서버로 전송하며, 서버는 이 정보를 기반으로 새로운 맛집을 데이터베이스에 저장하게 된다.



맛집 수정 API

@PutMapping("/restaurant/{restaurantId}")
public String editRestaurant(
        @PathVariable Long restaurantId
){
    return "This is editRestaurant" + restaurantId;
}

이 API는 이미 등록된 맛집의 정보를 수정하는 기능을 제공한다. PUT /restaurant/{restaurantId} 경로로 요청을 보내고, 수정할 데이터를 함께 전송하면, 서버는 해당 맛집의 정보를 업데이트한다. 이때 restaurantId는 수정할 맛집의 고유 ID를 지정한다.



맛집 삭제 API

@DeleteMapping("/restaurant/{restaurantId}")
public String deleteRestaurant(
        @PathVariable Long restaurantId
){
    return "This is deleteRestaurant" + restaurantId;
}

맛집을 삭제하는 기능을 제공하는 API다. DELETE /restaurant/{restaurantId} 경로로 요청을 보내면, 해당 ID를 가진 맛집이 데이터베이스에서 삭제된다.

profile
정도를 걷는 개발자

0개의 댓글