在spring控制器中,有没有一种方法可以将对象添加到不带@ModelAttribute的Freemarker模型中

在spring控制器中,有没有一种方法可以将对象添加到不带@ModelAttribute的Freemarker模型中,spring,freemarker,Spring,Freemarker,我将MVC视图解析器设置为Freemarker,与正常设置一样。但是我想在我的模型中添加一堆对象 现在我知道我可以这样做: @RequestMapping(value = "/add", method = RequestMethod.POST) public String add(@ModelAttribute("user") User user) { @RequestMapping(value = "/index", method = RequestMethod.GET) public St

我将MVC视图解析器设置为Freemarker,与正常设置一样。但是我想在我的模型中添加一堆对象

现在我知道我可以这样做:

@RequestMapping(value = "/add", method = RequestMethod.POST)
public String add(@ModelAttribute("user") User user) {
@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index(HttpServletRequest req) {
  MyContext myContext = new MyContext();
  myContext.addStuff(stuff);
  ....  add more stuff
  MagicViewObject.addModel(myContext);
  return "freemarkerTemplate"
}
这将映射参数并创建添加到模板标记的用户对象。我知道我能做到:

@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index(@ModelAttribute("model") ModelMap model) {
在那里我可以添加几乎所有我想要的内容。但我的问题是我必须这样做吗

我想知道是否有这样的方法:

@RequestMapping(value = "/add", method = RequestMethod.POST)
public String add(@ModelAttribute("user") User user) {
@RequestMapping(value = "/index", method = RequestMethod.GET)
public String index(HttpServletRequest req) {
  MyContext myContext = new MyContext();
  myContext.addStuff(stuff);
  ....  add more stuff
  MagicViewObject.addModel(myContext);
  return "freemarkerTemplate"
}

然后可以访问freemarker模板中的myContext对象。现在我知道我可能可以用@modeldattribute(“model”)ModelMap模型做到这一点,但我的问题是:有没有其他方法可以做到这一点。我不喜欢方法签名中的注释。这样我很奇怪。

返回一个
org.springframework.web.servlet.ModelAndView
对象。

做一些类似于
公共字符串索引(Model Model){Model.addAttribute(“foo”,getFoo());Model.addAttribute(“bar”,getBar());Model.addAttribute(“baz”,getBaz();}
的事情对你不起作用吗?