草庐IT

DocumentBuilder

全部标签

Java 和 XML (JAXP) - 缓存和线程安全怎么样?

我想知道在使用JavaAPIforXML处理时,哪些对象可以被重用(在相同或不同的文档中),JAXP:DocumentBuilderFactoryDocumentBuilderXPath节点ErrorHandler(编辑:我忘了这必须在我自己的代码中实现,抱歉)建议缓存这些对象还是JAXP实现已经缓存它们?这些对象的(再)使用是否线程安全? 最佳答案 重复使用在同一个线程中,这些对象可以并且应该被重用。例如,您可以使用DocumentBuilder来解析多个文档。线程安全DocumentBuilderFactory曾经明确表示它不是

Java 和 XML (JAXP) - 缓存和线程安全怎么样?

我想知道在使用JavaAPIforXML处理时,哪些对象可以被重用(在相同或不同的文档中),JAXP:DocumentBuilderFactoryDocumentBuilderXPath节点ErrorHandler(编辑:我忘了这必须在我自己的代码中实现,抱歉)建议缓存这些对象还是JAXP实现已经缓存它们?这些对象的(再)使用是否线程安全? 最佳答案 重复使用在同一个线程中,这些对象可以并且应该被重用。例如,您可以使用DocumentBuilder来解析多个文档。线程安全DocumentBuilderFactory曾经明确表示它不是

java - DocumentBuilder.parse() 线程安全吗?

是标准的Java1.6javax.xml.parsers.DocumentBuilder类线程安全吗?从多个线程并行调用parse()方法是否安全?JavaDoc没有提到这个问题,但JavaDocforthesameclass在Java1.4中明确表示它不是意味着并发的;那么我可以假设在1.6中是这样吗?原因是我在ExecutorService中运行了几百万个任务,每次调用DocumentBuilderFactory.newDocumentBuilder()似乎很昂贵。 最佳答案 尽管DocumentBuilder.parse似乎不

java - DocumentBuilder.parse() 线程安全吗?

是标准的Java1.6javax.xml.parsers.DocumentBuilder类线程安全吗?从多个线程并行调用parse()方法是否安全?JavaDoc没有提到这个问题,但JavaDocforthesameclass在Java1.4中明确表示它不是意味着并发的;那么我可以假设在1.6中是这样吗?原因是我在ExecutorService中运行了几百万个任务,每次调用DocumentBuilderFactory.newDocumentBuilder()似乎很昂贵。 最佳答案 尽管DocumentBuilder.parse似乎不

java - DocumentBuilder 线程安全吗?

我正在查看的当前代码库使用DOM解析器。以下代码片段在5种方法中重复:DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=factory.newDocumentBuilder();如果在循环中调用包含上述代码的方法或在应用程序中多次调用该方法,我们将承担为每次调用此类方法创建一个新DocumentBuilderFactory实例和一个新DocumentBuilder实例的开销.如下所示,围绕DocumentBuilder工厂和DocumentBuilder实例

java - DocumentBuilder 线程安全吗?

我正在查看的当前代码库使用DOM解析器。以下代码片段在5种方法中重复:DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=factory.newDocumentBuilder();如果在循环中调用包含上述代码的方法或在应用程序中多次调用该方法,我们将承担为每次调用此类方法创建一个新DocumentBuilderFactory实例和一个新DocumentBuilder实例的开销.如下所示,围绕DocumentBuilder工厂和DocumentBuilder实例

android - 处理问题 "javax/xml/parsers/DocumentBuilder.class": Ill-advised or mistaken usage of a core class (java. * 或 javax.*)

我添加了Dom4jmaven存储库,但总是出现此构建错误。处理“javax/xml/parsers/DocumentBuilder.class”时遇到问题:不明智或错误地使用核心类(java.或javax.)构建.gradle:applyplugin:'com.android.application'applyplugin:'maven'repositories{maven{url'http://mvnrepository.com/artifact/dom4j/dom4j/1.6.1'}}android{compileSdkVersion20buildToolsVersion'20.0

java - 使用 NodeList 和 DocumentBuilder 解析 Xml

在使用dom和DocumentBuilder解析xml时遇到一些麻烦。我能够让它工作,但我想我对所有子节点等有点困惑。这是我正在使用的XML:HeparineffectAcquiredhemophiliaAcquiredvWDDICDysfibrinogenemiaFIdeficiencyFIIdeficiencyFII/IIainhibitorsFIXdeficiencyFIXinhibitorsFVdeficiencyFVinhibitorsFVIIIdeficiencyFXdeficiencyFXinhibitorsFXIdeficiencyFXIinhibitorsFXIIde

java - DocumentBuilder.parse 是否关闭 InputStream

对于类似下面的代码:InputStreamis=newFileInputstream("test.xml");Documentdoc=DocumentBuilder.parser(is);我的问题是我是否需要手动关闭流(调用is.close())。DocumentBuilder会为我关闭InputStream吗? 最佳答案 使用下面的测试代码来查看输入流是否关闭,可以看到是哪一行代码关闭了流。publicclassDocumentBuilderTest{publicstaticvoidmain(String[]args){try{I

java - 使 DocumentBuilder.parse 忽略 DTD 引用

当我在这个方法中解析我的xml文件(变量f)时,我得到一个错误C:\DocumentsandSettings\joe\Desktop\aicpcudev\OnlineModule\map.dtd(Thesystemcannotfindthepathspecified)我知道我没有dtd,也不需要它。如何在忽略DTD引用错误的情况下将此File对象解析为Document对象?privatestaticDocumentgetDoc(Filef,StringdocId)throwsException{DocumentBuilderFactorydbf=DocumentBuilderFacto