2010-07-21 136 views
3

我在Spring 3應用程序中配置了一個ContentNegotiatingViewResolver,因此當我使用一個類似於** .json的URL調用控制器時,它會使用jackson庫返回一個json對象。春季自定義json

如果我把這個方法:

@RequestMapping("/myURL.json") 
public List<MyClass> myMethod(){ 
    List<MyClass> mylist = myService.getList(); 
    return mylist; 
} 

在JSON我收到我:

{"myClassList":[ 
    { object 1 in json }, 
    { object 2 in json }, 
    { object 3 in json } ... 
] 
} 

我的問題是:¿有什麼辦法來配置名稱myClassList這是在使用json? ¿是否有可能以這種方式沒有這個變量的JSON(類似下面的那個)?

[ 
    { object 1 in json }, 
    { object 2 in json }, 
    { object 3 in json } ... 
] 

謝謝。

回答

4

您可以直接返回org.springframework.web.servlet.ModelAndView對象,而不是List對象。在modelAndView對象上,您可以設置鍵的名稱。請參考以下代碼片段:

@RequestMapping("/myURL.json") 
public ModelAndView myMethod(){ 
    ModelAndView modelAndView = new ModelAndView(); 
    List<MyClass> mylist = myService.getList(); 
    modelAndView.addObject("MyClassName", myList); 
    return modelAndView; 
}