在spring控制器中,有没有一种方法可以将对象添加到不带@ModelAttribute的Freemarker模型中
我将MVC视图解析器设置为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
@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();}
的事情对你不起作用吗?