【发布时间】:2014-09-05 09:51:00
【问题描述】:
spring mvc
@ModelAttribute("classname"),
如何使参数“classname”成为dynamic 一个?
来自视图的任何内容都可以附加到那里。
【问题讨论】:
-
回答对你有帮助
标签: spring-mvc servlets modelattribute
spring mvc
@ModelAttribute("classname"),
如何使参数“classname”成为dynamic 一个?
来自视图的任何内容都可以附加到那里。
【问题讨论】:
标签: spring-mvc servlets modelattribute
命令对象的实例化是 Spring 需要知道 command 类的唯一地方。但是,您可以使用 @ModelAttribute 注释方法覆盖它:
@RequestMapping(method = RequestMethod.POST)
public void show(HttpServletRequest request,
@ModelAttribute("objectToShow") Object objectToShow)
{
...
}
@ModelAttribute("objectToShow")
public Object createCommandObject() {
return getCommandClass().newInstance();
}
顺便说一句,Spring 也适用于真正的generics:
public abstract class GenericController<T> {
@RequestMapping("/edit")
public ModelAndView edit(@ModelAttribute("t") T t) { ... }
}
@Controller @RequestMapping("/foo")
public class FooController extends GenericController<Foo> { ... }
【讨论】: