0

我有一个接受表单发布的控制器 -

@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 也能正常工作。
那么我可以通过扩展获得什么?

4

1 回答 1

1

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

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

同一个类中的两个符号根本没有意义,我觉得创建一个类SimpleFormController会限制它使用任何方法名称,并且您被迫使用一个onSubmit方法。然而,如果你使用@ControllerSpring 3 及更高版本中的所有灵活性。

于 2013-09-13T11:34:15.330 回答