@RequestParam

Dev.Hammy·2024년 4월 3일
0

반응형 스택에서 이에 상응하는 내용 보기

@RequestParam annotation을 사용하여 서블릿 요청 매개변수(즉, 쿼리 매개변수 또는 양식 데이터)를 컨트롤러의 메서드 인수에 바인딩할 수 있습니다. 다음 예에서는 그 방법을 보여줍니다.

@Controller
@RequestMapping("/pets")
public class EditPetForm {

	// ...

	@GetMapping
	public String setupForm(@RequestParam("petId") int petId, Model model) { // (1)
		Pet pet = this.clinic.loadPet(petId);
		model.addAttribute("pet", pet);
		return "petForm";
	}

	// ...

}

(1) @RequestParam을 사용하여 petId를 바인딩합니다.

기본적으로 이 annotation을 사용하는 메서드 매개 변수는 필수이지만 @RequestParam annotation의 required 플래그를 false로 설정하거나 java.util.Optional 래퍼로 인수를 선언하여 메서드 매개 변수가 선택 사항임을 지정할 수 있습니다.

대상 메소드 매개변수 type이 String이 아닌 경우 유형 변환이 자동으로 적용됩니다. type 변환을 참조하세요.

인수 유형을 배열이나 목록으로 선언하면 동일한 매개변수 이름에 대해 여러 매개변수 값을 확인할 수 있습니다.

@RequestParam annotation이 annotation에 지정된 매개변수 이름 없이 Map<String, String> 또는 MultiValueMap<String, String>으로 선언되면 지정된 각 매개변수 이름에 대한 요청 매개변수 값으로 맵이 채워집니다.

@RequestParam 사용은 선택 사항입니다(예: 속성 설정). 기본적으로 단순 값 유형(BeanUtils#isSimpleProperty에 의해 결정됨)이고 다른 인수 확인자에 의해 해결되지 않는 모든 인수는 @RequestParam으로 annotation이 달린 것처럼 처리됩니다.

0개의 댓글