JAVA/Spring Boot

[ Spring Boot ] - HTTP 요청 관련 어노테이션

algml0703 2023. 4. 29. 15:51
반응형

HTTP 요청 관련 어노테이션 종류

1. @RequestMapping:

HTTP 요청(request)을 처리하는 어노테이션이다. @RequestMapping의 경우 기본적으로 GET, POST, PUT, DELETE 등 모든 HTTP 메소드에 대한 요청을 처리하며, 인자에 값을 주어 특정 메서드의 요청만 받아 들이도록 설정할 수 도 있다.

2. @GetMapping:

HTTP GET 요청(request)을 처리하는 어노테이션이다.

3. @PostMapping:

HTTP POST 요청(request)을 처리하는 어노테이션이다.

4. @PutMapping:

HTTP PUT 요청(request)을 처리하는 어노테이션이다.

5. @DeleteMapping:

HTTP DELETE 요청(request)을 처리하는 어노테이션이다.

6. @RequestParam:

HTTP 요청(request)의 query string 파라미터를 추출하는 어노테이션이다.

7. @PathVariable:

HTTP 요청(request)의 URI 경로에서 파라미터를 추출하는 어노테이션이다.

8. @RequestBody:

HTTP 요청(request)의 body를 추출하는 어노테이션이다.

9. @RequestHeader:

HTTP 요청(request)의 헤더를 추출하는 어노테이션이다..

10. @CookieValue

@CookieValue 어노테이션을 HTTP 요청의 쿠키 값을 추출한다. 쿠키는 클라이언트와 서버 간에 상태 정보를 유지하기 위해 사용되는 것으로, 해당 어노테이션을 통해 쿠키의 이름을 지정하여, 쿠키값을 받아올 수 있다.

11. @MatrixVariable

URI의 행렬 변수를 추출한다. 행렬 변수란 URI 경로에 ;로 구분된 변수를 의미한다. 예를 들어 /users/1;name=mihee;age=28와 같이 되어있는 것을 의미한다. 매트릭스 변수의 경우 기본적으로 required=true로 필수값이다. 해당 변수가 값이 없을 때 기본값을 설정하려는 경우에는 defaultValue 속성을 사용한다.

12. @RequestPart

파일 업로드의 경우에 사용되며, @RequestPart를 통해 아래와 같이 HTTP 요청의 특정 부분을 구분하여 읽을 수 있다. 해당 어노테이션을 사용할 때에 주의점은 각각의 부분이 개별 요청으로 처리되기 때문에, 파트를 처리하는 메서드는 멀티쓰레드 환경에서 안전하게 동작할 수 있도록 해야 한다.

반응형