2012-03-21 3 views
2

json 형식으로 개체 목록을 반환해야하는 프로젝트 작업 중입니다. 나는 serialization을하기 위해 jackson 라이브러리와 함께 Spring-mvc 프레임 워크를 사용하고있다.Jackson 및 Spring-MVC와 함께 Json으로 개체 목록을 serialize

'name : objects of array'가 아닌 json 구조체를 직접 포함하고 싶습니다.

이 내 간단한 코드입니다

@RequestMapping(method = RequestMethod.GET, value = "/clients") 
public List getClients(
     @RequestParam(value = "estat", required = false) String estat 
     throws Exception { 

    List<Clients> l = s.mdClients(estat); 
    return l; 
} 

당신이 볼이 "반환 난"잭슨에 직접 가고, 잭슨은 같은 구조로 'L'을 변환합니다

{ 
    "ClientsList": [ 
    { 
     "x": "2", 
     "y": "5" 
    } 
]} 

문제 루트 "ClientsList"입니다. 루트없이이 출력을 얻고 싶습니다.

{ 
    [ 
    { 
     "x": "2", 
     "y": "5" 
    } 
]} 

아무도 도와 줄 수 있습니까? 미리 감사드립니다! 메소드 선언에 @ResponseBody를 추가 할 수

답변

2

나는 @vacuum 주석으로 내 컨트롤러에서 @ResponseBody를 사용하여 솔루션을 발견했습니다 (감사합니다!) :

@RequestMapping(method = RequestMethod.GET, value = "/clients") 
public @ResponseBody List getClients(
    @RequestParam(value = "estat", required = false) String estat 
    throws Exception { 

List<Clients> l = s.mdClients(estat); 
return l; 
} 

나는 또한 필요 내 출력 변환 방법을 바꾸려면

내 서블릿 컨텍스트에서 .xml, 내 목록 json 변환 잭슨 라이브러리를 사용하십시오. 지금

출력 :

[ 
    { 
    "x": "2", 
    "y": "5" 
    } 
] 
5

시도 :

public @ResponseBody List getClients() 
관련 문제