我还应该在Java5或Java6中使用JDOM吗?

我还应该在Java5或Java6中使用JDOM吗?,java,xml,Java,Xml,很长一段时间以来,我一直在使用JDOM进行一般的XML解析,但我感觉Java5或Java6肯定有更好的、或者至少更轻量级的东西 JDOMAPI没有问题,但我不喜欢在部署中包含Xerces。如果我只想在XML文件中读取或写出一个XML文件,是否还有更轻量级的替代方案?我们使用它-它根据模式生成类。您可以在不使用模式的情况下生成文件,只需对xml进行注释。您应该检查一下(请参阅我给出的答案)。它为解析XML提供了一个非常轻量级的机制。在我看来,最好的轻量级替代方案是XOM,但JDOM仍然是一个非常好

很长一段时间以来,我一直在使用JDOM进行一般的XML解析,但我感觉Java5或Java6肯定有更好的、或者至少更轻量级的东西


JDOMAPI没有问题,但我不喜欢在部署中包含Xerces。如果我只想在XML文件中读取或写出一个XML文件,是否还有更轻量级的替代方案?

我们使用它-它根据模式生成类。您可以在不使用模式的情况下生成文件,只需对xml进行注释。

您应该检查一下(请参阅我给出的答案)。它为解析XML提供了一个非常轻量级的机制。

在我看来,最好的轻量级替代方案是XOM,但JDOM仍然是一个非常好的API,我认为没有理由取代它


不过,它并不依赖Xerces(至少,它不需要ApacheXerces发行版,它与打包到JRE中的Xerces一起工作)。

我使用javax.xml.stream包(XMLStreamReader/XMLStreamWriter)使用xml拉/推技术读写xml。到目前为止,它对我很有效。

JDOM非常好而且简单。在JDOM发布后,有许多解析XML的新方法,但这些方法的重点不同于简单性。在某些情况下,JAXB使事情变得简单,因为众所周知,XML文档的模式并没有每天更新。 对于非常大的XML文件(数百MB),新的推式解析器非常好,甚至是必需的。
SAX解析器的速度优势可以是十倍。

使用Java标准的XML API之一,这样就不必包含任何第三方库


我认为JAXP对您来说是一个不错的选择。 它是标准的,包含在JDK中,它提供了清晰的接口,并允许连接任何实现。。
如果您只需要读写不太大且过于复杂的xml文件,那么JDK中嵌入的JAXP DOM api将满足您的需求。

最近有一种JDOM for java 5,名为。你应该去看看。

我不认为JAXB是JDOM的替代品,但是,它解决了完全不同的问题。从这个问题上,我了解到需要读写特定的XML。如果是这样,为什么不定义一个模式并保存所有繁琐的解析呢。如果需要编写任意的xml,那么我同意(我认为这是一种非常罕见的情况)+1我完全同意先编写域/配置对象,然后再考虑xml。+1注意javax.xml.stream包仅在Java 6中可用。如果您没有Java 6,但仍然想使用xmlpp,您可以查看。javax.stream包不是与xmlpull.org兼容的pull解析器(它的API稍有不同),但它们非常接近。你知道有适合编写XML的第三方流式API吗?@Adam xmlpull正在读写。@kts:这很方便!我想这个“拉”让我很失望+1:CoffeeDOM确实是一个非常方便的工具,它使使用API更加方便和有趣