20230611 [Spring] @RequestAttribute

Daisy🌷·2023년 6월 11일

@RequestAttribute 어노테이션을 사용하면 Spring은 해당 요청 속성을 해당 매개변수에 바인딩하려고 시도한다.

  1. 검색하려는 속성의 이름을 지정하여 메서드 매개변수에 @RequestAttribute 어노테이션을 추가한다.
@GetMapping("/accounts/me")
public String exampleMethod(@RequestAttribute("userId") UserId userId) {
}
  1. 검색하려는 속성이 요청에 설정되어 있는지 확인한다. 이는 Interceptor와 같은 애플리케이션 흐름의 이전 단계에서 수행하거나 HttpServletRequest 개체에서 setAttribute() 메서드를 사용하여 수행할 수 있다.
request.setAttribute("userId", userId);
  1. 컨트롤러 메서드가 호출되면 Spring은 지정된 이름("userId")을 가진 요청 속성을 찾는다. 찾으면 속성 값을 주석이 달린 매개변수('userId')에 바인딩한다.
@GetMapping("/accounts/me")
public String exampleMethod(@RequestAttribute("userId") UserId userId) {
    System.out.println(userId);
}

@RequestAttribute를 사용하면 컨트롤러 메서드 내에서 요청 속성에 쉽게 액세스할 수 있다. 요청 처리의 초기 단계에서 컨트롤러로 정보를 전달하는 방법을 제공하여 비즈니스 논리에서 해당 정보를 활용할 수 있다.

profile
티스토리로 블로그를 이전했습니다. 😂 구경 오세요! 👉🏻 https://u-ryu-logs.tistory.com

0개의 댓글