Java XStream还是Simple
我需要决定用哪一个。我的情况很简单。我需要将一个简单的POJO/Bean转换为XML,然后再转换回来。没什么特别的 我正在寻找的一件事是,它应该包括父属性以及。最好是它能在超级类型上工作,超级类型可以只是一个标记接口 如果有人能把这两个方面与正反两个方面进行比较,哪一个方面缺少了什么。我知道它也支持JSON,这是一个加号。但如果我们把JSON放在一边,乍一看就简单多了。就发展和社区而言,Simple的未来是什么?我相信XStream是相当流行的,甚至“XStream”这个词也影响了很多人Java XStream还是Simple,java,xml,jaxb,xstream,pojo,Java,Xml,Jaxb,Xstream,Pojo,我需要决定用哪一个。我的情况很简单。我需要将一个简单的POJO/Bean转换为XML,然后再转换回来。没什么特别的 我正在寻找的一件事是,它应该包括父属性以及。最好是它能在超级类型上工作,超级类型可以只是一个标记接口 如果有人能把这两个方面与正反两个方面进行比较,哪一个方面缺少了什么。我知道它也支持JSON,这是一个加号。但如果我们把JSON放在一边,乍一看就简单多了。就发展和社区而言,Simple的未来是什么?我相信XStream是相当流行的,甚至“XStream”这个词也影响了很多人 谢谢。
谢谢。我建议你看一下我还建议,看一下,然后自己决定。邮件列表响应速度非常快,任何查询都会得到及时的答复。到目前为止,我还从未使用过Simple framework
根据我使用Xstream的经验。它在XML上运行良好。然而,对于JSON,当我试图序列化包含哈希表列表的bean时,结果并不像预期的那样精确。仅仅是阅读文档(我面临着与您相同的问题,但尚未尝试任何一种方法;对此持保留态度): XSTREAM
在阅读stackoverflow时快速浏览simple;作为Paul Marshalls帮助文章的一个修正,我想我应该提到Simple似乎支持通过注释进行版本控制-
为什么不改用JAXB呢
- 100%架构覆盖率
- 庞大的用户群
- 多个实现(以防在一个实现中遇到错误)
- 包含在JavaSE6中,与JDK1.5兼容
- JAX-WS(Web服务)的绑定层
- JAX-RS的绑定层(Rest)
- 与JSON兼容(与库(如抛弃)一起使用时)
我想在这里分享一下。 要使XStream忽略缺少的字段(当您删除属性时),请执行以下操作: 这也可以扩展到处理版本和属性重命名
归功于Peter Voss:simple和Jaxb的一个“简单”(双关语)缺点是,它们需要先注释对象,然后才能序列化为XML。如果您很快想用未注释的对象序列化其他人的代码,会发生什么情况?如果有一天您能看到这种情况,那么XStream更适合。(有时,它真的可以归结为这样的简单需求来驱动您的决策)。在您的回答后编辑了我的问题。谢谢你介绍另一件事。我在JavaRanct的一个朋友让我意识到中间人的年龄只有2年,而且它只有一个提交人。所以,这对我来说是不可能的。现在,您可能想强调一下简单框架的一些方面,比如它如何更适合我。非常感谢。谢谢你,ng支持这个建议。现在我不需要做JSON的事情。顺便说一下,我尝试了Simple和XStream。两者都给了我想要的结果。但我坚持使用XStream,因为我想它很受欢迎无论如何,谢谢。请查看我的比较JAXB和XStream的博文:也请查看我的比较JAXB和Simple的博文:JAXB是最好的,但是Android开发人员应该记住,由于mis,您不能使用它
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);
}
};
}
};