2010-07-21 3 views
3

Я сконфигурировал в приложении Spring 3 ContentNegotiationViewResolver, поэтому, когда я вызываю контроллер с URL-адресом, который выглядит как **. Json возвращает объект json, используя библиотеку jackson.Пользовательский 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; 
} 
Смежные вопросы