使用SimpleFormController

时间:2013-09-13 11:18:45

标签: spring spring-mvc

我有一个接受表格的控制器 -

@Controller
public class RegistrationFormController extends SimpleFormController {
.....
.....
    @RequestMapping(value="index", method=RequestMethod.POST)
    protected ModelAndView onSubmit(@ModelAttribute Registration registration) throws Exception {
        String uname=registration.getUsername();
        .....
    .......

         ModelAndView mv = new ModelAndView("success");
.....
......
          mv.addObject("addr",addr);

        return mv;
    }

即使我没有扩展SimpleFormController,Thsi也能正常工作 我可以通过扩展获得什么?

1 个答案:

答案 0 :(得分:1)

嗯,设置似乎不太好。 @Controller注释是一个很好的功能,用于声明构造型。它只是说它是另一个spring Component或Spring托管bean,可以在组件扫描中检测到。

当您扩展SimpleFormController时,您明确表示它是一个控制器并且必须用作控制器,它将用于接受提交的表单数据并以视图的形式返回响应。

同一个类中的两个符号完全没有意义,我觉得让类SimpleFormController限制它使用任何方法名称,并且你被迫使用onSubmit方法。然而,如果您使用@Controller,则可以充分利用Spring 3及更高版本中的所有灵活性。