spring接口为@ModelAttribute param

我有UsersController方法:

@RequestMapping(value={"/new"}, method=RequestMethod.GET)
public String showCreationForm(@ModelAttribute User user){
    return "user_registration_form";
}

显示注册表格.我希望在我的项目中保持模块化(在其他项目中使用此控制器会很好),因此User是一个接口,并且有它的实现 – UserImpl.问题是Spring无法实现用户界面的实例化.有没有办法配置spring使用User的一些默认实现?

解决方法:

您可以使用@ ModelAttribute-annotated方法提供要使用请求数据填充的对象:

@ModelAttribute
public User createUser() {
    return new UserImpl();
}
上一篇:LoggerFactory is not a Logback LoggerContext but Logback is on the classpath. Either remove Logback


下一篇:Cpython如何实现其类型对象,即类型的类型总是类型?