RequestParam

SeungJoo
|2023. 11. 27. 22:07
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