@RequestParam
2024. 9. 15. 13:32ㆍ정보처리,전산/springboot
반응형
@RequestParam은 스프링에서 요청 URL의 파라미터를 메서드의 파라미터로 바인딩할 때 사용하는 애너테이션으로 클라이언트가 보내는 쿼리 파라미터를 쉽게 처리할 수 있다. 각 파라미터는 메서드에 전달되며, 필수 여부 및 기본값 등을 설정할 수 있다.
@RequestParam의 주요 속성:
- name: 요청 파라미터의 이름을 지정한다.
- required: 파라미터가 필수인지 여부를 지정한다. 기본값은 true이다.
- defaultValue: 파라미터가 없을 때 사용할 기본값을 지정한다.
@RestController
public class MyController {
@RequestMapping("/requestParamTest")
public String requestParamTest(
@RequestParam(name = "a", required = false, defaultValue = "0") int a, // 파라미터 a가 없으면 기본값 0 사용
@RequestParam("b") String b, // 파라미터 b는 필수
@RequestParam(name = "c", defaultValue = "true") boolean c) { // 파라미터 c가 없으면 기본값 true 사용
System.out.println("a = " + a);
System.out.println("b = " + b);
System.out.println("c = " + c);
return "hello";
}
}
- 요청 URL: /requestParamTest?a=5&b=test&c=false
- a = 5
- b = test
- c = false
- 요청 URL: /requestParamTest?b=hello
- a = 0 (기본값)
- b = hello
- c = true (기본값)
코드 해석
- @RestController:
- @RestController는 스프링에서 해당 클래스를 RESTful 웹 서비스의 컨트롤러로 지정한다.
- 이 클래스 안에 정의된 메서드들은 HTTP 요청을 처리하며, 반환값은 뷰(view)를 거치지 않고 직접 응답으로 반환된다.
- @RequestMapping("/requestParamTest"):
- 이 애너테이션은 requestParamTest 메서드가 /requestParamTest라는 URL로 오는 요청을 처리하도록 설정한다.
- 기본적으로 GET, POST, PUT, DELETE 등 모든 HTTP 메소드를 처리할 수 있지만, 특정 메소드를 지정하려면 method 속성을 사용할 수 있다.
- @RequestParam:
- @RequestParam은 HTTP 요청에서 전달된 파라미터 값을 메서드의 인수로 바인딩할 때 사용한다.
- 클라이언트가 /requestParamTest 경로로 요청을 보낼 때, URL에 포함된 쿼리 파라미터(a, b, c)가 메서드의 인자로 전달된다.
- @RequestParam 애너테이션을 통해 각 파라미터를 쉽게 매핑할 수 있으며, 파라미터가 없을 경우 기본값을 사용하거나, 필수 파라미터가 없을 경우 예외를 발생시킨다.
반응형
'정보처리,전산 > springboot' 카테고리의 다른 글
@RequestMapping (0) | 2024.09.15 |
---|---|
Gradle 의존성 추가 키워드 (0) | 2024.06.27 |
Annotations (0) | 2024.06.21 |
jetbrains IntelliJ HotKey (0) | 2024.06.21 |
GRADLE , MAVEN (0) | 2024.06.21 |