출처 : Spring 프레임워크 워크북 (한빛 미디어)
정리할려고 visio로 그려보았다.
Simple은 아닌것 같은데.. 본격적으로 구현들어가면 많이 사용할 컨트롤러같아 보여 내용을 많이 이해하고 있어야 겠다.
지금 아는거라곤
Constructor에서 setCommnadClass(className)와 같이 명령 클래스 설정
bean 설정(.xml)에서
formView : 컨트롤러가 HTTP GET 요청을 받았을때나 또는 에러가 발생했을 때 보여줘야 할 뷰의 논리적인 이름
successView : 성공적으로 폼이 제출됐을때 보여줘야 할 뷰의 논리적인 이름
일단 이렇게 되어 있어야 것고..
java method안에서 가져올라면.. getSuccessView() 하면되고..
아.. 이클립스에서 작업시 Constructor에서 ctrl+space 하니까. setCommandClass처럼 많은게 나오던데..
setSuccessView()도 있었다는거..
결론은 SimpleFormController를 상속받으면 클래스 객체가 만들어질때 생성자에서.. bean에서 선언한 property값을 가져오는것 같다.
요청 처리시
명령객체를 전달하여 폼제출을 처리할때는 protected void doSubmitAction(Object command) 요넘을 쓰고..
데이터를 전송하여 뷰에 의해 보여지도록 해야 하는 경우onSubmit() 를 override 하여 protected ModelAndView onSubmit(Object command, BindException errors) 요렇게 사용한다는거다..
showForm() 역시 bean설정에서 정의한 formView 속성을 반환하는데 이게 싫으면 역시 오브라이드 할수 있다.
아직까지 formBackingObject(), initBinder(), onBind(), Validator(), onBindAndValidate(), handleValidSubmit(), processFormSubmission 등등은 모르겠다.ㅡ.ㅡ;
나열하고 보니 아는게 별루 없네.. 이번주안에 다 알아내야 되는데..걱정이다.
암튼 이 SimpleFormController은 생각보다 복잡하고, 많은 콜백 메소드를 제공하고 있다..
'spring' 카테고리의 다른 글
spring aop+oracle procedure 에서의 transaction 처리.. (0) | 2007.10.05 |
---|---|
spring aop without java interface (0) | 2007.09.10 |
Spring 라이브러리 (0) | 2007.08.21 |
flex data management services with spring (0) | 2007.08.20 |
springMVC Controller 종류 (0) | 2007.05.23 |