我编写的代码使用 SQLXML 对象来获取 Writer,然后将该对象保存到 DB。但是,我刚刚发现 SQLXML Writer 只不过是 ByteArrayOutputStream 的包装器。这意味着如果我向写入器写入 3GB 数据,那么将占用 3GB 堆。那不是我想要的。
如果不先将其存储在本地,真的没有办法写入 Oracle 中的 clob/xmltype 列吗?
如果真的没有办法做到这一点,我将创建一个新表来存储每个条目的数据子集。也许我可以以某种方式将数据库中的结果结合起来,但这对我来说真的像是一个黑客。我只想打开一个流,写入它,然后关闭它。