[英]How to convert data part of an object into XML using XStream?
首先,如果问题不明确,我很抱歉。 我正在尝试使用XStream在对象中创建XML及其内容。
以下是我想要实现的XML形式:
<Tag attr1 = "some_value" attr2 = "some_value"> CONTENT </Tag>
我在设计课程时遇到了麻烦。
以下是我到目前为止实现它的方式:
@XStreamAlias("Tag")
public class Tag {
@XStreamAsAttribute
private String attr1;
@XStreamAsAttribute
private String attr2;
private String content;
public Tag(String content) {
this.content = content;
}
// Getters for all three
// Setters for all three
}
现在,当我执行以下操作时:
Tag tag = new Tag("Content");
tag.setAttr1("some_value");
tag.setAttr2("some_value");
XStream xStream = new XStream();
xStream.processAnnoations(Tag.class);
System.out.println(xStream.toXML(tag));
我使用额外的<content>
标记获取XML。 我不想要额外的<content>
标签,我希望它是<Tag>
的内容。 我如何使用XStream做到这一点?
只需添加@XStreamConverter(value=ToAttributedValueConverter.class, strings={"content"})
转换器。
@XStreamConverter(value=ToAttributedValueConverter.class, strings={"content"})
@XStreamAlias("Tag")
public class Tag {
@XStreamAsAttribute
String attr1;
@XStreamAsAttribute
String attr2;
String content;
public Tag(String content) {
this.content = content;
}
public static void main(String[] args) {
Tag tag = new Tag("Content");
tag.attr1 = "some_value";
tag.attr2 = "some_value";
XStream xStream = new XStream();
xStream.processAnnotations(Tag.class);
System.out.println(xStream.toXML(tag));
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.