在POJO-JSON封送中包含类名



下面是这个例子。

GET响应为:

{"歌手":"Metallica","title":"输入Sandman"}

如果包含更多的对象,输出应该是这样的:

[{"歌手":"Metallica","title":"输入Sandman"}{"歌手":"猫王","title":"Rock"}]

我也想把"类名"写出来。类似这样的东西:

{"轨道":[{"歌手":"Metallica","title":"输入Sandman"}{"歌手":"猫王","title":"Rock"}]}

有什么简单的方法可以实现这一点吗?

期待着从JAX-RSResteasy(Jackson)服务器直接将数据获取到Datatables中。也尽量避免DTO。

class TrackList  
{  
   private List<Track> Track = new ArrayList<Track>();  
   // setter, getter  
}  

GET方法

public TrackList getTrackInJSON() {  

编辑
GET方法

public String getTrackInJSON() {   
   // ... create list of objects  
   return convertToString(objects);  
}   

效用法

static <T> String convertToString(List<T> list) throws IOException
{
    final String json = new ObjectMapper().writeValueAsString(list);
    return new StringBuilder()
            .append("{"")
            .append(list.get(0).getClass().getSimpleName())
            .append("":")
            .append(json)
            .append("}")
            .toString();
}

最新更新