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 요청의 특정 부분을 구분하여 읽을 수 있다. 해당 어노테이션을 사용할 때에 주의점은 각각의 부분이 개별 요청으로 처리되기 때문에, 파트를 처리하는 메서드는 멀티쓰레드 환경에서 안전하게 동작할 수 있도록 해야 한다.
'JAVA > Spring Boot' 카테고리의 다른 글
[ Spring Boot ] - 간단 스케줄링 작업하기 (0) | 2023.08.09 |
---|---|
[ Java ] - SMS 전송하기 (feat. naver cloud platform) (0) | 2023.05.17 |
[ Spring Boot ] - swagger 적용 (0) | 2023.05.15 |
spock 사용법(테스트 코드 작성) (0) | 2023.02.23 |
[ Spring boot ] - intellij IDEA + gradle + jpa 프로젝트 생성하기(feat. rest api) (0) | 2022.11.19 |