@ModelAttribute와 @SessionAttributes질문이 있습니다.
- 작성자 :
- 박*호
- 작성일 :
- 2010-05-18 16:01:12
- 조회수 :
- 3,575
- 구분 :
- 실행환경
- 진행상태 :
- 완료
Q
public String selectKeywordList(@ModelAttribute("searchVO") KeywordDefaultVO searchVO, ModelMap model) throws Exception
1) 위의 코드의 메소드 파라미터부분에서요 -> @ModelAttribute("searchVO")
요부분이 메소드와 매핑되어 있는 것이 아니고 그냥 위의 메소드 파라미터에서만 선언된 것이라면 @ModelAttribute("searchVO") KeywordDefaultVO searchVO <- 이부분이 searchVO값으로 넘어온 파라미터값들을 model로 그냥 바인드 시킨다고 해석하면 되는 건가요? 보통 메소드와 매핑되어 있다면 메소드의 결과값 searchVO에 집어넣고 바인딩하는 것때문에 헷갈려서요^^
@SessionAttributes(types=KeywordVO.class)
2)이건요 보통 model로 저정되는 모든 타입이 KeywordVO형으로 세션에 저장되는 것입니까? 아니면 model에 저장되는 타입이 KeywordVO형 인것만 세션에 저장하는 것입니까?
1) 위의 코드의 메소드 파라미터부분에서요 -> @ModelAttribute("searchVO")
요부분이 메소드와 매핑되어 있는 것이 아니고 그냥 위의 메소드 파라미터에서만 선언된 것이라면 @ModelAttribute("searchVO") KeywordDefaultVO searchVO <- 이부분이 searchVO값으로 넘어온 파라미터값들을 model로 그냥 바인드 시킨다고 해석하면 되는 건가요? 보통 메소드와 매핑되어 있다면 메소드의 결과값 searchVO에 집어넣고 바인딩하는 것때문에 헷갈려서요^^
@SessionAttributes(types=KeywordVO.class)
2)이건요 보통 model로 저정되는 모든 타입이 KeywordVO형으로 세션에 저장되는 것입니까? 아니면 model에 저장되는 타입이 KeywordVO형 인것만 세션에 저장하는 것입니까?
A
안녕하세요.. 박현호님..
1) 우선 @RequestMapping이 메소드에 매핑되지 않으면.. @ModelAttribute 사용 자체가 의미가 없을 것 같습니다.
@RequestMapping이 있다가 가정하면 말씀하신 것 처럼 searchVO의 값에 파라미터 값들을 채우고.. model에 바인드시킨다고 보시면 됩니다. model에 add되는 형태입니다.. 즉.. JSP와 View에서 "searchVO"라는 이름으로 KeywordDefaultVO 객체의 값들을 참조할 수 있는 거죠.. (해당 객체의 값들은 web의 request 파라미터로 넘어오는 것이구요..
2) KeywordVO.class 클래스 타입에 해당되는 객체가 @ModelAttribute를 통해 model에 담아질 때에.. session에 보관됩니다.
그럼.. 즐거운 하루되십시오.
감사합니다.
1) 우선 @RequestMapping이 메소드에 매핑되지 않으면.. @ModelAttribute 사용 자체가 의미가 없을 것 같습니다.
@RequestMapping이 있다가 가정하면 말씀하신 것 처럼 searchVO의 값에 파라미터 값들을 채우고.. model에 바인드시킨다고 보시면 됩니다. model에 add되는 형태입니다.. 즉.. JSP와 View에서 "searchVO"라는 이름으로 KeywordDefaultVO 객체의 값들을 참조할 수 있는 거죠.. (해당 객체의 값들은 web의 request 파라미터로 넘어오는 것이구요..
2) KeywordVO.class 클래스 타입에 해당되는 객체가 @ModelAttribute를 통해 model에 담아질 때에.. session에 보관됩니다.
그럼.. 즐거운 하루되십시오.
감사합니다.