2010-09-29 120 views
1

在控制器方法JSP或JSON視圖使用我的@ResponseBody控制器返回我的POJO默認的JSON表示,但可以通過默認的視圖改變爲JSP,只有當返回JSON響應您的內容類型是application/jsonSpring MVC的:根據請求

@RequestMapping(value="/myRequest") 
public @ResponseBody myPojo myRequest() throws Exception {  
    return service.getMyPojo(); 
} 

PS:我試過ContentNegotiatingViewResolver,但我不確定是否是實現這一目標的最佳選擇。

+2

這正是'ContentNegotiatingViewResolver'是。你有工作嗎? – skaffman 2010-09-29 14:26:27

+0

不,我會嘗試。我在網上看到了一些例子,但他們並不是完全如此。 – sinuhepop 2010-09-29 14:35:43

回答

2

您可以有兩個映射:

@RequestMapping(value = "/myRequest", headers="content-type=application/json") 
public @ResponseBody jsonExample() throws Exception {  
    return service.getMyPojo(); 
} 

@RequestMapping(value = "/myRequest", headers="content-type=text/*") 
public String jspExample() throws Exception {  
    return "myJspView"; 
}