인프런 커뮤니티 질문&답변

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술

HTTP 요청 파라미터 - @RequestParam

requestParamV4

작성

·

193

0

강의내용처럼 @RequestParam을 아예 생략하는 경우에

알아서 인식한다고 하셨는데 만약 파라미터를 그 쿼리파라미터값 말고 따로 파라미터를 생성해서 넘겨줄때는 무슨 어노테이션을 써야되나요? 

답변 2

1

안녕하세요, alrnr3521 님! 공식 서포터즈 codesweaver 입니다.

기본적으로 폼에서 GET 메서드로 데이터를 전송할 경우 모든 값이 쿼리스트링 형태로 전달됩니다.

반면 POST 메서드로 전송할 경우 HTTP 바디에 전달하게 되는데요,

이 때 @RequestParam이 아닌 폼의 구성요소(input 태그의 name 속성) 이름으로 바로 받는것이 가능합니다.

<input type="text" name="userName" /> 같은 구성요소가 있다면

 

다음과 같이 받을 수 있습니다.

public class SomeController {

... 

    public String someMethod(String userName) {

       ... 코드생략...

   }

}

또한 폼에 구성요소가 많을 경우, 일일히 파라미터로 받기 번거로운데요 이떄는 DTO 객체를 이용하기도 합니다. 아래와 같이 객체를 만들고,

@Getter @Setter

class FormDto {

   private String userName;

}

 

컨트롤러에서 다음처럼 객체로 그냥 받는것도 가능합니다.

public class SomeController {

    public String someMethod(FormDto dto) {

         ... 코드 생략...

    }

}


감사합니다.

0

안녕하세요. alrnr3521님, 공식 서포터즈 OMG입니다.

만약 파라미터를 그 쿼리파라미터값 말고 따로 파라미터를 생성해서 넘겨줄때

이 내용이 이해가 가지 않습니다. 예시를 들어 설명해주시겠어요?

감사합니다.

alrnr3521님의 프로필 이미지
alrnr3521

작성한 질문수

질문하기