Get,Post API

Quill_Kim_13·2024년 8월 18일
0

SpringBoot

목록 보기
4/10

@RestController

Spring Famework 4 버전부터 사용가능한 어노테이션
@Controller에 @ResponseBody가 결합된 어노테이션
컨트롤러 클래스 하위 메소드에 @ResponseBody 어노테이션을 붙이지 않아도 문자열과 JSON 등을 전송할 수 있음
View를 거치지 않고 HTTP ResponseBody에 직접 Return 값을 담아 보내게됨

@RequestMapping

MVC의 핸들러 매핑(Handler Mapping)을 위해서 DefaultAnnotationHandlerMapping을 사용
DefaultAnnotationHandlerMapping 매핑정보로 @RequestMapping 어노테이션을 활용
클래스와 메소드의 RequestMapping을 통해 URL을 매칭하여 경로를 설정하여 해당 메소드 처리

value : url 설정
method : GET, POST, DELETE, PUT, PATCH 등

스프링 4.3버전 부터 메소드를 지정하는 방식보다 간단하게 사용할 수 있는 어노테이션을 사용할 수 있음
@GetMapping, @PostMapping, @DeleteMapping, @PutMapping, @PatchMapping

@PathVariable

GET 형식의 요청에서 파라미터를 전달하기 위해 URL에 값을 담아 요청하는 방법
아래 방식은 @GetMapping에서 사용된 {변수}의 이름과 메소드의 매개변수와 일치시켜야함

사용된 {변수}의 이름과 메소드의 매개변수가 다를 경우, 변수관리의 용이를 위해 괄호안에 이름을 일치 시킨다

@RequestParam

GET형식의 요청에서 쿼리 문자열을 전달하기 위해 사용되는 방법
'?'를 기준으로 우측에 {키} = {값} 형태로 전달되며, 복수 형태로 전달할 경우 &를 사용함.

어떤요청 값이 들어올지 모를경우

Get API

DTO 사용

GET 형식의 요청에서 쿼리 문자열을 전달하기 위해 사용되는 방법
key와 value가 정해져있지만, 받아야할 파라미터가 많을 경우 DTO 객체를 사용한 방식

Post API

리소스를 추가하기 위해 사용되는 API

@PostMapping : POST API를 제작하기 위해 사용되는 어노테이션
@RequestMapping + POST method의 조합
일반적으로 추가하고자 하는 Resource를 http body에 추가하여 서버에 요청
그렇기 때문에 @ReqeustBody를 이용하여 body에 담겨있는 값을 받아야함

DTO 사용

key와 value가 정해져있지만, 받아야할 파라미터가 많을 경우 DTO 객체를 사용한 방식

profile
미친개발자를향해

0개의 댓글