2011-03-14 5 views
0

스프링 컨트롤러에서 주석을 적용한 스타일 컨트롤러로 컨트롤러를 변환하려고합니다.스프링 주석을 사용하여 여러 모델 객체를 반환하는 방법은 무엇입니까?

기본적으로 이전 스타일 컨트롤러 simpleformcontroller에서이 작업을 수행합니다.

protected Map referenceData(HttpServletRequest request) throws Exception { 
    Map referenceData = new HashMap(); 
    List<ItemVo> lstItem1 = eqrManager .searchAllEqptCondQualItems("A1", "BOXES");  List<ItemVo> lstItem2 = eqrManager.searchAllEqptFullQualItems("A2", "CANNED_GOODS");  referenceData.put("BOX_ITEMS", lstItem1); 
referenceData.put("CANNED_ITEMS", lstItem2); 
return referenceData; 
} 

은 내가 입력 인수로 모델을 복용 방법 아래 수행하지만 내가 양식 제출이 발생할 때마다 호출해야합니다 방법을 아래에 만들 수있는 방법 한 번만 호출됩니다. 이 방법은 컨트롤러가 취급하는 각 요청에 대해 자동으로 호출된다

@ModelAttribute("CANNED_ITEMS") 
public List<ItemVo> cannedItems() { 
    return eqrManager.searchAllEqptFullQualItems("A2", "CANNED_GOODS"); 
} 

@ModelAttribute("BOX_ITEMS") 
public List<ItemVo> boxItems() { 
    return eqrManager .searchAllEqptCondQualItems("A1", "BOXES"); 
} 

:

@RequestMapping(method=RequestMethod.GET) public void setUp(Model model) { 
    model.addAttribute("CANNED_ITEMS", eqrManager.searchAllEqptFullQualItems("A2", "CANNED_GOODS"))   .addAttribute("BOX_ITEMS", eqrManager.searchAllEqptCondQualItems("A1", "BOXES")); } 

감사합니다,

주권

답변

0

당신은 referenceData()의 대체 @ModelAttribute -annotated 방법을 사용할 수 있습니다 정의 된 곳에서 결과가 모델에 추가됩니다.

+0

어떻게 모든 양식을 제출할 때 하나의 방법으로 이것을 호출 할 수 있습니까? – rajputhch

+0

그 작업을하기 전에 시도했지만, 모든 내 생체 개체를 반환하는 단일 메서드를 정의하여 양식을로드하려는 경우 모든 요청을 호출해야합니다. – rajputhch

관련 문제