728x90
RequestParam
Spring 프레임워크에서 @RequestParm은 Http 요청에서 파라미터를 컨트롤러 메서드의 매개변수로 가져오는 데 사용되는 기능입니다. (단일 HTTP요청 파라미터 메서드를 파라미터에 넣어주는 애노테이션)
예시
@GetMapping("/example")
public String exampleMethod(@RequestParam("paramName") String parameter) {
// paramName으로 전달된 값을 parameter 변수에 받아옵니다.
// 이 값을 사용하여 로직을 처리할 수 있습니다.
return "result";
}
@RequestParam("paramName") 은 요청에서 paramName이라는 이름의 파라미터를 가져와서 parameter라는 메서드 매개변수에 할당합니다. 만약 요청에 paramName이 없다면 기본적으로 parameter는 null이 됩니다.
id 요청 파라미터 int타입 변환
public String viewById(@RequestParam("id") int id) {}
메서드는 id라는 이름의 요청 파라미터를 int 타입으로 받아와서 id 매개변수에 할당합니다.
Map 타입으로 선언하여 모든 파라미터 담을 수 있음
public String viewAllParams(@RequestParam Map<String, String> params) {}
메서드는 모든 요청 파라미터를 담은 params 맵으로 받아옵니다. 가각의 키는 파라미터의 이름이 되고 값은 해당 파라미터의 값이 됩니다.
File type 받는 방법
public String uploadFile(@RequestParam("file") MultipartFile file) {}
메서드는 file이라는 이름의 요청 파라미터로 업로드된 multipartfile 타입으로 받아 옵니다.
RequestParam을 사용하면 해당 파라미터가 반드시 있어야 합니다!!!
@RequestParam을 사용하지도 않고도 파라미터의 존재 여부를 검사하고 처리할 수 있는 대안적인 방법들입니다.
RequestParam의 defaultValue 사용
public String viewWithDefault(@RequestParam(value = "id", defaultValue = "0") int id) {}
defaultValue를 사용하여 id 파라미터가 없는 경우 기본값을 0으로 할당합니다.
HttpServletRequest 사용
public String viewWithRequest(HttpServletRequest request) {
String idParam = request.getParameter("id");
if (idParam != null) {
int id = Integer.parseInt(idParam);
// 처리 로직
} else {
// id가 없는 경우
// 처리 로직
}
}
HttpServletRequest 를 이용하여 직접 파라미터를 가져와 처리할 수 있습니다.
728x90
'Spring(Boot & FrameWork)' 카테고리의 다른 글
Parameter (0) | 2023.11.28 |
---|---|
서블릿 컨테이너 (0) | 2023.11.20 |
Thymeleaf (0) | 2023.11.16 |