我正在使用 POI 的 SXSSFWorkbench 类来创建非常大的工作簿。多个进程可能同时运行我的应用程序,因此我认为将 processId 附加到默认临时文件名是明智的。我不知道该怎么做,也找不到任何最新的编码示例。
谁能给我举个例子,或者给我概述一下必须做什么?我看到有一个静态的 TempFile.createTempFile 方法。我应该在实例化 SXSSFWorkbook 类之前使用类覆盖来执行它吗?还是之后?
我还看到有一个 DefaultTempFileCreationStrategy 类。也找不到如何使用它的示例。
最佳答案
Apache POI 为此使用的主要类是 TempFile
您要调用的方法是 TempFile.setTempFileCreationStrategy
您需要做的是创建您自己的类来实现接口(interface) TempFileCreationStrategy .这很好也很简单,只有两个方法,createTempDirectory和 createTempFile .
要了解所涉及的内容,您可以 look at the source code for DefaultTempFileCreationStrategy online here .这很简单,只需在线程和命名方面放入您自己需要的逻辑即可。
关于apache-poi - 如何更改 Apache POI SXSSFWorkbook 默认临时文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55463100/