gpt4 book ai didi

java - 如何解析大型 SOAP 响应

转载 作者:行者123 更新时间:2023-12-02 06:56:54 25 4
gpt4 key购买 nike

我有一个大型 SOAP 响应,我想要处理它并将其存储在数据库中。我正在尝试将整个事情作为文档处理,如下所示

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
dbf.setCoalescing(true);
DocumentBuilder db = dbf.newDocumentBuilder();
InputStream is = new ByteArrayInputStream(resp.getBytes());
Document doc = db.parse(is);
XPathFactory xPathfactory = XPathFactory.newInstance();
XPath xpath = xPathfactory.newXPath();
XPathExpression expr = xpath.compile(fetchResult);
String result = (String) expr.evaluate(doc, XPathConstants.STRING);

resp 是 SOAP 响应,fetchResult 是 String fetchResult = "//结果/文本()";

我用这种方法遇到了内存不足的异常。因此,我尝试将文档作为流处理,而不是将整个响应作为文档使用。

但是我无法给出代码。

请问有人可以帮我吗?

最佳答案

DOM 和 JDOM 是消耗内存的解析 API。 DOM 在内存中创建 XML 文档树。您应该使用 StAX 或 SAX,因为它们提供更好的性能。

关于java - 如何解析大型 SOAP 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17208435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com