我希望我的许多控制器能够创建并返回ModelMaps,并让这些ModelMaps随后被JsonView发送/处理。 (这些控制器将为AJAX请求提供服务。)我假设我需要设置一个ViewResolver;做这个的最好方式是什么?有没有比Spring-Json View更好的选择?
修改
当我的控制器返回ModelMap个对象而不是ModelAndView对象时,如何连接视图?
答案 0 :(得分:1)
我不确定它是否是spring-json的'更好'的替代品,但是使用Spring 3.0,你可以在Controller中注释一些方法,它将根据HTTP Accept标头返回json或xml。 / p>
有关详细信息,请参阅this博文。
答案 1 :(得分:1)
使用spring-json视图有什么问题?
这似乎是你想要处理这样的事情的确切方式:
答案 2 :(得分:1)
/**
* Custom handler for displaying vets.
* Note that this handler returns a plain {@link ModelMap} object instead of
* a ModelAndView, thus leveraging convention-based model attribute names.
* It relies on the RequestToViewNameTranslator to determine the logical
* view name based on the request URL: "/vets.do" -> "vets".
* @return a ModelMap with the model attributes for the view
*/
@RequestMapping("/vets.do")
public ModelMap vetsHandler() {
return new ModelMap(this.clinic.getVets());
}
它依赖于 RequestToViewNameTranslator 来确定逻辑视图名称。