Spring Level 1 과제 제출

song yuheon·2023년 8월 27일
0

Spring

목록 보기
2/93
post-thumbnail

Why: 과제 제출시에는 아래 질문을 고민해보고 답변을 함께 제출해주세요.

  1. 수정, 삭제 API의 request를 어떤 방식으로 사용하셨나요? (param, query, body)
    -> 수정 : requestBody를 통해 Json을 사용자 정의 객체 형태로 받았다
    -> 삭제 : pw하나만 받으면 되기에 RequestBody를 활용해서 Map 객체로 받았다

  2. 어떤 상황에 어떤 방식의 request를 써야하나요?
    @RequestBody = JSON 형태의 데이터를 객체로 바꾸고 싶을때

@RequestParam = 쿼리 스트링 형태로 파리미터를 URL로 전송할때
URL ~ ?test=test
@PathVariable = Rest방식으로 URL에 파라미터 담아 전송 할때
URL ~ /test

  1. RESTful한 API를 설계했나요? 어떤 부분이 그런가요? 어떤 부분이 그렇지 않나요?

memo 예제와 비교해 보니 엔드포인트 명명 규칙이 제대로 반영 되어있지 않다
allRead, choiceRead/{title}, choiceUpdate/{id}, choiceDelete/{id}
=> ( 수정 )
GET /data (모든 데이터를 조회)
GET /data/{title} (제목으로 데이터 조회)
PUT /data/{id} (선택 데이터 수정)
DELETE /data/{id} (선텍 데이터 삭제)

불필요한 코드가 있었다
사용하지 않는 코드 제거

Get /data/{title} -> 제목으로 데이터 조회
제목이 겹친경우 문제 발생 가능
=> id로 찾는 것으로 변경

  1. 적절한 관심사 분리를 적용하였나요? (Controller, Repository, Service)
  1. API 명세서 작성 가이드라인을 검색하여 직접 작성한 API 명세서와 비교해보세요!
    https://www.notion.so/SpringSolLevelOne-c967ed679b5f47a994028b01f154ddff

https://github.com/songyuheon98/SpringSolLevelOne

profile
backend_Devloper

0개의 댓글