Map(맵), List(리스트) ?
* Client로 부터 Server로 전달된 파라미터 데이터를 Map, List 로 주입 받을 수 있다.
* Map으로 주입 받을시 같은 이름으로 전달되는 2개이상의 파라미터는 하나의 값만 저장된다.
* 위 경우, List로 주입받으면 해결된다.
--> Util Package ( java.util.Map, java.util.List )
@ModelAttribute ?
* Client로 부터 Server로 전달된 파라미터 데이터를 클래스객체(Bean)으로 주입 받는다.
* 전달된 파라미터의 이름과 동일한 객체의 프로퍼티(속성)에 자동으로 데이터가 주입이 된다.
* @ModelAttribute 어노테이션은 생략이 가능하다.
(매개변수로 자바클래스를 선언시 자동으로 @ModelAttribute 적용된다)
* @ModelAttribute 선언객체(Bean)는 View에 객체데이터로 전달시, Request영역에 자동으로 할당된다. 따라서,
${requestScope.myInfoDto.name}와 같이 ${requestScope."클래스 명(첫글자 소문자)"."프로퍼티 명"} 사용한다.
* @ModelAttribute("객체 지정이름") 옵션으로, 객체 사용이름을 직접 선언 시, View에 전달된 객체데이터는
${requestScope."객체 지정이름"."프로퍼티 명"} 으로 사용한다.
1. ParamTestController 선언.
* java.util.Map 사용하여 Client로 부터 전달된 파라미터 데이터를 (Key, Value)로 활용할 수 있다.
* java.util.List 사용하여 Client로 부터 동일한 이름으로 전달된 파라미터를 리스트로 처리 할 수 있다.
(Map, List)로 파라미터를 전달 받을 시, Value는 String(문자열)만 가능하다.
* @ModelAttribute 로 선언된 각 클래스는 Client로 부터 전달된 파라미터를 속성으로 받을 수 있다.
* @ModelAttribute 는 생략이 가능하다.
2. DTO클래스 선언 (MyInfoDto, MyInfoDto2)
* 파라미터 전달 클래스 (DTO선언)
3. ParamTestController 확인 (브라우저 URL요청 및 테스트)
'SpringMVC' 카테고리의 다른 글
[SpringMVC] Server응답 처리방식(Redirect, Forward) (0) | 2021.09.08 |
---|---|
[SpringMVC] Server응답 처리방식(Request, Model, ModelAndView) (0) | 2021.09.05 |
[SpringMVC] 파라미터 처리방식 (1) (0) | 2021.08.30 |
[SpringMVC] Http요청 정의 및 활용 (0) | 2021.08.29 |
[SpringMVC] URL Mapping 정의 및 활용 (0) | 2021.08.28 |