如何使用 MinIO Java SDK 检查 MinIO 存储桶中是否存在对象?

Tae*_*eme 2 java sdk amazon-s3 minio

我目前正在开发一个带有 MinIO 对象存储的 Spring Web 应用程序。我需要实现一个功能来检查上传文件是否成功上传或检查文件是否存在于存储桶中。

根据我的研究,我发现的所有信息都已过时,无法与最新的 MinIO Java SDK 一起使用。这就是为什么我决定在这里问这个问题。

Tae*_*eme 8

在研究了 MinIO Java SDK 一段时间后。我发现如果你在minioClient中调用statObject函数,只有当对象存在于bucket中时才会成功。当对象不存在时抛出ErrorResponseException。

所以我想出了这个功能。

public boolean isObjectExist(String name) {
        try {
            minioClient.statObject(StatObjectArgs.builder()
                    .bucket(defaultBucketName)
                    .object(name).build());
            return true;
        } catch (ErrorResponseException e) {
            e.printStackTrace();
            return false;
        } catch (Exception e) {
            e.printStackTrace();
            throw new RuntimeException(e.getMessage());
        }
    }
Run Code Online (Sandbox Code Playgroud)