gpt4 book ai didi

java - 解码长 XML 文件的单个非根节点

转载 作者:行者123 更新时间:2023-12-01 14:13:15 24 4
gpt4 key购买 nike

我有一个如下所示的 XML:

<root>
<header>
...
</header>
<entries>
...
</entries>
</root>

只有一个头节点,但有很多条目。有没有办法将该节点提取为 Java bean,而无需读取整个 XML 文件。

如果可能的话,SpringBatch 或 XStream 是否对此有支持?

我认为将 SpringBatch 面向 block 的 tasklet 与 StaxEventItemReader 一起使用并不合适,因为我只想读取一项。

最佳答案

您可以编写自己的 ItemReader 来扩展 StaxEventItemReader(或者更好的是委托(delegate)它),重新定义方法 ItemReader.read() 并更改条件以指示阅读器“耗尽”,仅在第一个之后返回 null有效节点读取:当 Spring-batch 发现 ItemReader.read() 方法返回 null 时,它将停止处理文件。
您可以使用面向 block 并避免完整文件读取。

关于java - 解码长 XML 文件的单个非根节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18318805/

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