Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何更改Apache POI SXSSFWorkbook默认临时文件名_Apache_Apache Poi_Sxssf - Fatal编程技术网

如何更改Apache POI SXSSFWorkbook默认临时文件名

如何更改Apache POI SXSSFWorkbook默认临时文件名,apache,apache-poi,sxssf,Apache,Apache Poi,Sxssf,我正在使用POI的SXSSFWorkbench类创建非常大的工作簿。我的应用程序可能同时运行多个进程,因此我认为将processId附加到默认的临时文件名是明智的。我不知道怎么做,也找不到任何最近的编码示例 有人能给我举个例子,或者给我概述一下必须做什么吗?我看到有一个静态TempFile.createTempFile方法。在实例化SXSSFWorkbook类之前,我是否应该使用类重写来执行该操作?还是之后 我还看到了DefaultTempFileCreationStrategy类。也找不到如何

我正在使用POI的SXSSFWorkbench类创建非常大的工作簿。我的应用程序可能同时运行多个进程,因此我认为将processId附加到默认的临时文件名是明智的。我不知道怎么做,也找不到任何最近的编码示例

有人能给我举个例子,或者给我概述一下必须做什么吗?我看到有一个静态TempFile.createTempFile方法。在实例化SXSSFWorkbook类之前,我是否应该使用类重写来执行该操作?还是之后


我还看到了DefaultTempFileCreationStrategy类。也找不到如何使用此功能的示例

Apache POI为此使用的主要类是

您要调用的方法是

您需要做的是创建自己的类来实现接口。这很好,很简单,只有两种方法,而且


要了解其中涉及的内容,您可以。这很简单,只要根据您自己的需要在线程和命名方面加入逻辑即可。

谢谢。这很有帮助。我很不好意思,我之前没看到。澄清一下:调用TempFile.setTempFileCreationStrategy应该在实例化SXSSFWorkbook对象之前进行?还是在创建工作簿对象之后?或者在创建SXSSFWorkbook并创建第一张图纸之后的任何时间?这一部分我不清楚。需要在打开工作簿之前进行设置,打开工作簿可以使用临时文件,具体取决于选择的选项。在多线程环境中使用时请小心。