Spring 3使用Jackson将ArrayList序列化为JSON而不包装到对象(没有名称)

我有简单的资源,它应该返回JSON数组,但它返回的对象是数组:

@RequestMapping(value = "/types", method = RequestMethod.GET) public List  types() { ArrayList  list=new ArrayList(); list.add(new JsonObject("Audi")); list.add(new JsonObject("Mercedes")); return list; } 

其中JsonObject是具有三个String atributes(value,id,label)的简单类。

返回:

 {"jsonObjectList":[{"value":"Audi","id":"Audi","label":"Audi"},{"value":"Mercedes","id":"Mercedes","label":"Mercedes"}]} 

但我需要的是(因为它是Jquery UI自动完成预期):

 [{"value":"Audi","id":"Audi","label":"Audi"},{"value":"Mercedes","id":"Mercedes","label":"Mercedes"}] 

怎么实现呢? 提前致谢。

在Spring 3.1中,您应该能够将MappingJacksonJsonView bean上名为extractValueFromSingleKeyModel的属性设置为true以删除包装器。

哦,好像之前已经问到为什么jackson用一个以课堂命名的额外层来包裹我的物体?