我正在使用internet上的一个API,它将对象编组成XML文件。考虑到XSD文件也是可用的,我希望能够在下载完这些文件后将它们解锁回Java对象中。
环顾四周之后,JAXB似乎是用Java实现这一功能的默认库,但在我开发移动应用程序时,额外的8.6MB依赖是不能接受的。我也找到了XStream,但它的重量仍然是7.9MB。
仔细查看Android,看起来只有萨克斯才是真正的XML解析器。
所以问题是:
谢谢。
发布于 2009-08-29 19:20:49
有很多工具可以在Java和XML之间转换对象,但我所熟悉的工具中没有一个比您所发现的要小。然而,取决于对象图的复杂性,SAX可能是您所需要的,并且它的开销非常小。诀窍是在SAX事件处理程序中自己构建对象图。在XML编组器被广泛使用之前,我已经在几个项目中使用了这种技术,尽管它需要更多的工作,但它是有效的。
发布于 2010-02-25 18:08:45
有一个框架将在Android上工作,它使用与JAXB类似的方式使用注释进行Java到XML的绑定,它被称为简单,在低于270 K的情况下,这是XStream或JAXB所需的一小部分。而且,它没有外部依赖,只有一个JAR,一切都应该正常工作。下面是指向Java的简单的XML序列化框架的链接。
http://simple.sourceforge.net
这也可以处理对象图中的循环。
发布于 2010-03-23 15:58:19
XStream为431 K。您不需要android应用程序中的整个发行版zip。如果您为了更快的性能而添加xpp3拉式解析器,那么它将添加24k。这将使你的整个包裹达到455 K。还是不太理想,但我可以接受。
https://stackoverflow.com/questions/1351218
复制相似问题