Dev/Spring Boot
스프링부트 입문
OK-가자
2022. 3. 2. 17:41
필자는 이미 Spring의 기본은 알기 때문에 처음하거나 모르는 부분에 대해서만 필기하는 관계로 이 포스트를 보고 그대로 따라하면 안됩니다.
IntelliJ로 Spring실행
😮 위 사진처럼 포트번호 변경 가능
😮 위 사진처럼 API를 프로젝트 별 Test 관리 가능
😎GET API
위의 표는 각 API요청들의 특성
😮 위 사진처럼 queryParam을 여러게 넣어서 사용 가능! 하지만 쿼리를 명시적으로 받고 싶으면 ?
😮 위와 같이 간단하게 표현 가능하다. 그럼 파라미터를 하나하나 다 설정 해줘야 할까? 아니다. 다음 방법을 보자.
DTO 클래스를 만들고
😮 파라미터에 그 객체를 사용해주면
된다. WOW
😎POST API
위의 표는 각 API요청들의 특성
👍꿀팁 : 위와 같이 뜨면 alt+enter 누르고 인텔리제이 추천 코드로 변경가능
😮이렇게 받아도 되지만,DTO를 사용하여 POST 받을수도 있다.
😡여기서 잠깐!! 자바에서는 카멜케이스(phoneNumber) 제이슨은 스네이크케이스(phone_number) 일수 있는데 어떻게 될까?
😡NULL이 뜬다. 그럼 어떻게 해줘야 할까?
😮그럼 위와같이 JsonProperty 어노테이션 달아주면 된다.
😎PUT API
갱신 업데이트
위의 표는 각 API요청들의 특성
먼저 클래스 2개 만들어주고 getter setter tostring 만들어주고 시작한다.
😡여기서 snakeCase사용할수있는 2번째 방법!! 위 사진과 같이 JsonNaming 어노테이션을 달아준다.
😮 PUT 했고 Reponse 해보자.
😮 위 사진과 같이 PutRequestDto를 return 해주면
😮 그대로 Request받아온걸 볼수있다. 그럼 알아서 Json으로 Response 해주는걸 알 수 있다.
😎Delete API
는 생략....
😎Response 내려주기
)
)
😮위는 Text로 (String)으로 응답
)
)
)
😮위는 User 객체로 응답
👻위의 원리는 req가 obj mapper 거쳐서 obj 가 되고 method를 타고 obj를 던지면 다시 objmapper를 타고 json으로 response된다.
)
)
😮위 방법은 ResponseEntity를 이용한 방법이고 응답상태나 body에 넣어줄 객체 혹은 Header값 까지 설정가능하다.
)
)
)
😮위 사진들 처럼 RestAPI를 안쓰고 Page를 요청할 경우도 있다. 이때 Json객체를 Response하고 싶으면 어떻게 할까?
)