首页 文章

使用jettison json提供程序使用jaxb映射列表

提问于
浏览
2

我有一个方法

@GET
@Produces("application/json")
public List<Conversation> getMyConversations() { /* ... */ }

json输出就像

[{"conversation" : { ... }}, {"conversation" : { ... }}]

但是,我想输出这个

"conversations" :  [{"conversation" : { ... }}, {"conversation" : { ... }}]

有没有办法做到这一点?

1 回答

  • 0

    看来这就是JBoss RestEasy的设计行为:http://docs.jboss.org/resteasy/docs/2.2.1.GA/userguide/html_single/index.html#json_list

    我已经看到这种方法通过将列表作为另一个类的成员返回来解决,例如

    @XmlRootElement(name = "ConversationSet")
    public class ConversationSet {
        private Set<Conversation> sonversations;
        // getters and setters...
    }
    

    这将产生如下内容:

    {
         "conversationSet": 
         {
           "conversations" :  [{"conversation" : { ... }}, {"conversation" : { ... }}]
         }
       }
    

    这更接近大多数客户对JSON的期望 .

相关问题