在社区的一些帮助下,我找到了答案。
您必须更改序列化方式:
该行:
xStream.toXML(o, new OutputStreamWriter(stream, encoding));
改为线
xStream.marshal(o, new CompactWriter(new OutputStreamWriter(stream, encoding)));
您仅更改XStream的创建方式。因此,XStream的初始化更改为:
private final XStream xstreamOut = new XStream(new JsonHierarchicalStreamDriver() {
public HierarchicalStreamWriter createWriter(Writer writer) {
return new JsonWriter(writer, new char[0], "", JsonWriter.DROP_ROOT_MODE);
}
});
注意,使用4参数的JsonWriter构造函数。