2011-04-23 4 views
1

이 시나리오는 간단하다, 나는스프링 MVC 3 일반적인 컨트롤러 아키텍처 질문

@RequestMapping(method = RequestMethod.GET) 
public ModelAndView setUpForm(){ 
ModelAndView modelAndView = new ModelAndView("/driverForm"); 
Driver = myService.getDriver(); 
modelAndView.addObject("driver",driver); 
return modelAndView; 
} 

그리고 드라이버 개체에 대한 설정 방법을 , JSP 페이지를 이동

: 업데이트 방법은 드라이버가 예를 들어 드라이버 이름, 내가 원하는 드라이버 정보와 JSP 층을 "공급"하고 데이터

다음
@RequestMapping(params = "update", method = RequestMethod.POST) 
    public String update(Driver driver, BindingResult result, SessionStatus status) { 
myService.saveDriver(driver); 
return "driversList"; 
} 

업데이트하세요 사용자가 (자전거, 버스, 택시 등) 및지도에서 선택하는 체크 박스로 디스플레이 다양한 라이센스 유형 :

<form:input path="name" size="20" maxlength="50" /> 

내 질문은 다른 모델의 특성을 채우고 예를 들어 이러한 속성 에 드라이버 정보를 연결하는 방법입니다 내 컨트롤러에서 드라이버 객체의 단일 속성으로 변경 이 필드에서 기존 드라이버를 편집 할 때 선택 항목도 매핑하십시오. 올바른 컨트롤러 아키텍처는 무엇입니까? 컨트롤러에서

답변

1

이 포함 된 모델에 당신이 제안하고자하는 모든 옵션을 컬렉션을 추가 한 다음에서 사용 그래서 코드는 다음과 같이 것을 렌더링하는 라디오 버튼 태그 :

@RequestMapping(method = RequestMethod.GET) 
public ModelAndView setUpForm(){ 
ModelAndView modelAndView = new ModelAndView("/driverForm"); 
Driver = myService.getDriver(); 
modelAndView.addObject("driver",driver); 
Collection transportType = .... 
modelAndView.addObject("transportType", transportType); 
return modelAndView; 
} 

를 JSP에서 http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/view.html#view-jsp-formtaglib-radiobuttonstag

을 : 당신은 여기에 태그를 당신은 라디오 버튼에 대한 자세한 정보를 찾을 수있는이

<form:radioBoxes items="${transportType}" path="..."/> 

과 같이 할 것