【发布时间】:2014-05-15 09:22:52
【问题描述】:
我使用 xstream 将具有嵌套类的对象编组为 xml 字符串, 我这样写:
public static String java2xml(Object obj, Class<?> T) {
XStream xstream = new XStream(new StaxDriver());
xstream.processAnnotations(T);
String xml = xstream.toXML(obj);
return xml;
}
但我在输出字符串中得到了<outer-class reference="../.."/>。
对象类是:
public class Foo {
private String foocontent;
private Bar bar;
// getter and setter
public class Bar {
private String blabla;
// getter and setter
}
}
我用这个代码创建了一个Foo:
Foo foo = new Foo();
Bar bar = foo.new Bar();
bar.setBlabla("hello");
foo.setBar(bar);
String fooxml = Xutil.java2xml(foo, Foo.class);
System.out.println(fooxml);
整个xml是:
<?xml version="1.0" ?>
<me.mypackage.Foo>
<bar>
<blabla>hello</blabla>
<outer-class reference="../.."/>
</bar>
</me.mypackage.Foo>
问题1:我怎样才能摆脱outer-class 部分?
问题2:如何用xstream制作格式漂亮的xml字符串?
在上一篇文章中,我有很多情绪化的问题,使我的问题不清楚,我编辑了我的帖子并列出了我要寻求的帮助,谢谢。
【问题讨论】: