您可以使用单例设计模式来确保
StandardFileSystemManager
被创建。
我看到你在用
@Service
注释。我猜它是春天来的。你为什么不登记
标准FileSystemManager
作为春豆,然后自动连线
MyFileService
@Service
public class MyFileService {
private final StandardFileSystemManager manager;
@Autowired
public MyFileService(StandardFileSystemManager manager) {
this.manager = manager;
}
public List<FileObject> listRemoteFiles() {
try {
manager.resolveFile(someURL);
} finally {
manager.close();
}
return Arrays.stream(remoteFiles)
.collect(Collectors.toList());
}
}
作为标记为的任何类中的bean
@Configuration
如下所示
@Bean
public StandardFileSystemManager manager() {
StandardFileSystemManager manager = new StandardFileSystemManager();
manager.init();
return manager;
}