Post API
- 리소스를 추가하기 위해 사용되는 API
@PostMapping : Post API를 제작하기 위해 사용되는 Annotation. @RequestMapping과 POST method의 조합.
일반적으로 추가하고자 하는 Resource를 http body에 추가하여 서버에 요청. 그렇기 때문에 @RequestBody를 이용하여 body에 담겨있는 값을 받아야함.
@PostMapping(value = "/member")
public String postMember(@RequestBody Map<String, Object> postData) {
StringBuilder sb = new StringBuilder();
postData.entrySet().forEach(map -> {
sb.append(map.getKey() + " : " + map.getValue() + "\n");
});
return sb.toString();
}
Put API
- 해당 리소스가 존재하면 갱신하고, 리소스가 없을 경우에는 새로 생성해주는 API. 업데이트를 위한 메소드. 기본적인 동작 방식은 Post API와 동일함.
Delete API
- 서버를 통해 리소스를 삭제하기 위해 사용되는 API. 일반적으로 @PathVariable을 통해 리소스 ID등을 받아 처리함.
ResponseEntity
- Spring Framework에서 제공하는 클래스 중 HttpEntity라는 클래스를 상속받아 사용하는 클래스. 사용자의 HttpRequest에 대한 응답 데이터를 포함. (포함하는 클래스 : HttpStatus, HttpHeaders, HttpBody)
Swagger 란?
- 서버로 요청되는 API 리스트를 HTML 화면으로 문서화하여 테스트 할 수 있는 라이브러리. 협업에 도움이 됨. 이 라이브러리는 서버가 가동되면서 @RestController를 읽어 API를 분석하여 HTML 문서를 작성함.
Swagger가 필요한 이유
- REST API의 스펙을 문서화 하는 것은 매우 중요. API를 변경할 때마다 Reference 문서를 계속 바꿔야하는 불편함이 있음.
Swagger 설정 방법
- @Configuration : 어노테이션 기반의 환경 구성을 돕는 annotation. IoC Container에게 해당 클래스를 Bean 구성 Class 임을 알려줌.
- @Bean : 개발자가 직접 제어가 불가능한 외부 라이브러리 등을 Bean으로 만들 경우에 사용.
'Spring' 카테고리의 다른 글
DTO, DAO, Repository, Entity 노트 (0) | 2022.11.02 |
---|---|
Lombok 정리 노트 (0) | 2022.11.01 |
Get API 만드는 방법 노트 (0) | 2022.10.30 |
MVC Pattern 노트 (0) | 2022.10.29 |
Maven - pom.xml 파일 노트 (0) | 2022.10.28 |
댓글