我们有一个需要转换为对象的XML,反之亦然。像Xstream这样的东西。到目前为止,我们使用Xstream来编组和解组object / xml。 然而问题是,与xstream中的XML相对应的对象需要将所有标记作为属性;否则,如果XML包含对象中不存在的任何额外标记;它炸弹。
或者,我们需要编写自定义转换器以确保操作符合要求。我还建议普通的消化器允许从XML到对象的Xpath解析。
我想知道什么是最好的方法;只要:
你有什么建议?
答案 0 :(得分:2)
你可能想看看这个问题......
What is the best way to convert a java object to xml with open source apis
这些是它列出的一些图书馆......
答案 1 :(得分:2)
您需要使用此处记录的自定义MapperWrapper http://pvoss.wordpress.com/2009/01/08/xstream/
XStream xstream = new XStream() {
@Override
protected MapperWrapper wrapMapper(MapperWrapper next) {
return new MapperWrapper(next) {
@Override
public boolean shouldSerializeMember(Class definedIn,
String fieldName) {
if (definedIn == Object.class) {
return false;
}
return super.shouldSerializeMember(definedIn, fieldName);
}
};
}
};
它唯一能做的就是告诉XStream忽略它不知道要处理的所有字段。
答案 2 :(得分:0)
我建议使用http://simple.sourceforge.net/我使用注释来映射属性和元素,并且具有“非严格”模式,使您能够从XML文档中读取忽略Java对象中不存在的所有属性和元素。 / p>