使用 XStream 序列化对象时添加属性
我正在使用 XStream 将 Java 对象序列化为 XML。是否可以自定义 XStream,以便在序列化对象时在根 XML 元素中插入属性?
假设我
class A{
int foo = 1;
}
希望 XStream 序列化 A 的实例,如下所示:
<A type="text/xml">
<foo>1</foo>
</A>
其中属性 text/xml 自动添加到根元素。
我的用例是序列化我的 java 对象并将其作为 Atom 条目文档中的内容元素插入。最终结果如下:
<feed>
<content type="text/xml">
<foo>1</foo>
</content>
</feed>
我不需要能够解组提要。我需要一个与我正在序列化的对象的类无关的通用解决方案。
我可以使用 XStream 实现此目的吗?
I am using XStream to serialize Java objects to XML. Is it possible to customize XStream so that when it serializes an object it inserts an attribute in the root XML element?
Let's say I have
class A{
int foo = 1;
}
I want XStream to serialize instances of A to look like:
<A type="text/xml">
<foo>1</foo>
</A>
Where the attribute text/xml is automatically added to the root element.
My use case is serializing my java object and insert it as the content element inside Atom entry documents. The end result would look like:
<feed>
<content type="text/xml">
<foo>1</foo>
</content>
</feed>
I do not require being able to unmarshall the feed. I need a generic solution that is agnostic to the class of the object I am serializing.
Can I achieve this with XStream?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
唯一的方法是
XStream.useAttributeFor(...)
方法。这将迫使您为您正在使用的每种对象类型配置 XStream,因此不是不可知的。
所以我不认为 XStream 是您需要的工具。
The only way are the the
XStream.useAttributeFor(...)
methods.This would force you to configure XStream for each object type you are using though, thus not agnostic.
So I don't think XStream is the tool you need.