Java 如何使用JCIFS库有效地验证大容量文件的存在?

Java 如何使用JCIFS库有效地验证大容量文件的存在?,java,smb,jcifs,Java,Smb,Jcifs,我有一个进程,可以读取数据库来收集大约200000个文件(并且还在增长)的服务器和路径信息。我使用JCIFS库检查文件是否存在于指定位置,每次检查一个文件,方法如下: SmbFile file = new SmbFile(fullPath, getNtlmPasswordAuthentication()); if(file.exists()) { return true; } 完成这个过程需要几个小时。我正在设法加快这一进程。需要验证的文件分布在40个目录中。每个目录可以包含数千个文

我有一个进程,可以读取数据库来收集大约200000个文件(并且还在增长)的服务器和路径信息。我使用JCIFS库检查文件是否存在于指定位置,每次检查一个文件,方法如下:

SmbFile file = new SmbFile(fullPath, getNtlmPasswordAuthentication());
if(file.exists()) {
     return true;
}

完成这个过程需要几个小时。我正在设法加快这一进程。需要验证的文件分布在40个目录中。每个目录可以包含数千个文件。SmbFile有一个listFiles()函数,允许我打开一个目录并获取该文件夹中的SmbFile数组。我想知道我是否在正确的轨道上,是否有人有更好的想法。谢谢

您绝对应该使用listFiles()。如果我理解正确,您的方法会导致每个文件都有一个请求,而listFiles()会给您每个目录都有一个请求-我希望速度能提高x1000左右

您能在远程主机上运行代码吗?不太可能。要求是为需要在web环境中使用该工具的用户创建UI。谢谢!现在真的很快!