【问题标题】:Is it possible to ignore one node when using CamelCaseStyle in simple-framework在简单框架中使用 CamelCaseStyle 时是否可以忽略一个节点
【发布时间】:2013-09-27 03:09:38
【问题描述】:

当我通过简单的方式序列化我的 java 对象时,我遇到了一个驼峰式问题。我使用 CamelCaseStyle,所有节点的名称都将用驼峰命名,但我需要一个特定节点上的异常,我该如何设置它?例如,我的代码是:

public class Message {
    String toUserName;
    @ElementList(entry="item")
    LinkedList<Article> articles;

    public static void main(String args[])
    {
            Message msg = new Message();
            msg.toUserName = "xxx";
            Article item = new Article();
            item.title = "aaa";
            LinkedList<Article> list = new LinkedList<Article>();
            list.add(item);
            msg.articles = list;

            Style style = new CamelCaseStyle();
            Format format = new Format(style);
            Serializer serializer = new Persister(format);
            OutputStream os = new ByteArrayOutputStream();
            try {
                    serializer.write(msg, os);
            } catch (Exception e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
            }
            System.out.print(os);
    }
}

生成的xml是:

<Message>
 <ToUserName>xxx</ToUserName>
 <Articles>
  <Item>
     <Title>aaa</Title>
  </Item>
 </Articles>
</Message>

我想要的是:

<Message>
 <ToUserName>xxx</ToUserName>
 <Articles>
  <item>
     <Title>aaa</Title>
  </item>
 </Articles>
</Message>

【问题讨论】:

    标签: java xml serialization simple-framework


    【解决方案1】:

    是的,看看CamelCaseStyle的setElement方法,像这样设置“item”为“item”

    camelCaseStyle.setElement("item", "item")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-03
      • 1970-01-01
      • 1970-01-01
      • 2023-01-30
      • 2015-12-13
      • 2018-03-20
      • 2012-06-24
      相关资源
      最近更新 更多