필자는 이미 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하고 싶으면 어떻게 할까?
)
😮위와 같이 할 수 있다. 하지만 사진을 보면 age 값이 0이다. 아무것도 입력안해서 0 인데 null로 뜨게 하고싶으면?
😮위와 같이 Integer 객채로 만들어주면 된다.
😮WOw, 그럼 null값은 빼고 싶으면?
😮이렇게 JsonInclude 넣어주면된다.
'Dev > Spring Boot' 카테고리의 다른 글
스프링의 다양한 기능(Filter, Interceptor) (0) | 2022.03.02 |
---|---|
스프링의 다양한 기능(Vaildation, Exception처리) (0) | 2022.03.02 |
스프링의 핵심 (0) | 2022.03.02 |
REST Client 설치[Talend ApI Tester] (0) | 2022.03.02 |
SPRINGBOOT는 뭘까? (0) | 2022.03.02 |