类 ObjectService

java.lang.Object
cn.herodotus.engine.oss.minio.definition.service.BaseMinioService
cn.herodotus.engine.oss.minio.service.ObjectService

@Service public class ObjectService extends BaseMinioService

Description: Minio 对象操作服务

作者:
: gengwei.zheng
Date:
: 2022/6/30 20:06
  • 构造器概要

    构造器
    构造器
    说明
     
  • 方法概要

    修饰符和类型
    方法
    说明
    io.minio.ObjectWriteResponse
    composeObject(io.minio.ComposeObjectArgs composeObjectArgs)
    通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
    io.minio.ObjectWriteResponse
    composeObject(String bucketName, String objectName, String region, List<io.minio.ComposeSource> composeSources)
    通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
    io.minio.ObjectWriteResponse
    composeObject(String bucketName, String objectName, List<io.minio.ComposeSource> composeSources)
    通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
    io.minio.ObjectWriteResponse
    copyObject(io.minio.CopyObjectArgs copyObjectArgs)
    通过服务器端从另一个对象复制数据来创建一个对象
    void
    copyObject(String bucketName, String objectName, io.minio.CopySource copySource)
    通过服务器端从另一个对象复制数据来创建一个对象
    void
    copyObject(String bucketName, String objectName, String region, io.minio.CopySource copySource)
    通过服务器端从另一个对象复制数据来创建一个对象
    void
    downloadObject(io.minio.DownloadObjectArgs downloadObjectArgs)
    将对象的数据下载到文件。
    void
    downloadObject(String bucketName, String objectName, String filename)
    将对象的数据下载到文件。
    void
    downloadObject(String bucketName, String objectName, String filename, Boolean overwrite)
    将对象的数据下载到文件。
    void
    downloadObject(String bucketName, String objectName, String versionId, String filename, Boolean overwrite)
    将对象的数据下载到文件。
    void
    downloadObject(String bucketName, String objectName, String region, String versionId, String filename, Boolean overwrite)
    将对象的数据下载到文件。
    io.minio.GetObjectResponse
    getObject(io.minio.GetObjectArgs getObjectArgs)
    GetObject接口用于获取某个文件(Object)。
    io.minio.GetObjectResponse
    getObject(String bucketName, String objectName)
    GetObject接口用于获取某个文件(Object)。
    io.minio.GetObjectResponse
    getObject(String bucketName, String objectName, String versionId)
    GetObject接口用于获取某个文件(Object)。
    io.minio.GetObjectResponse
    getObject(String bucketName, String objectName, String region, String versionId)
    GetObject接口用于获取某个文件(Object)。
    getPresignedObjectUrl(io.minio.GetPresignedObjectUrlArgs getPresignedObjectUrlArgs)
    获取一个指定了 HTTP 方法、到期时间和自定义请求参数的对象URL地址,也就是返回带签名的URL,这个地址可以提供给没有登录的第三方共享访问或者上传对象。
    getPresignedPostFormData(io.minio.PostPolicy postPolicy)
    使用此方法,获取对象的上传策略(包含签名、文件信息、路径等),然后使用这些信息采用POST 方法的表单数据上传数据。
    Iterable<io.minio.Result<io.minio.messages.Item>>
    listObjects(io.minio.ListObjectsArgs listObjectsArgs)
    listObjects列出桶的对象信息
    Iterable<io.minio.Result<io.minio.messages.Item>>
    listObjects(String bucketName)
    listObjects列出桶的对象信息
    Iterable<io.minio.Result<io.minio.messages.Item>>
    listObjects(String bucketName, Boolean recursive)
    递归listObjects列出桶的对象信息
    io.minio.ObjectWriteResponse
    putObject(io.minio.PutObjectArgs putObjectArgs)
    上传文件
    void
    removeObject(io.minio.RemoveObjectArgs removeObjectArgs)
    移除一个对象
    void
    removeObject(String bucketName, String objectName)
    移除一个对象
    void
    removeObject(String bucketName, String objectName, String versionId)
    移除一个对象
    void
    removeObject(String bucketName, String objectName, String region, String versionId)
    移除一个对象
    Iterable<io.minio.Result<io.minio.messages.DeleteError>>
    removeObjects(io.minio.RemoveObjectsArgs removeObjectsArgs)
    懒惰地删除多个对象。
    Iterable<io.minio.Result<io.minio.messages.DeleteError>>
    removeObjects(String bucketName, String region)
    懒惰地删除多个对象。
    io.minio.SelectResponseStream
    selectObjectContent(io.minio.SelectObjectContentArgs selectObjectContentArgs)
    通过 SQL 表达式选择对象的内容
    io.minio.StatObjectResponse
    statObject(io.minio.StatObjectArgs statObjectArgs)
    获取对象的对象信息和元数据
    io.minio.StatObjectResponse
    statObject(String bucketName, String objectName)
    取对象的对象信息和元数据
    io.minio.StatObjectResponse
    statObject(String bucketName, String objectName, String region)
    取对象的对象信息和元数据
    io.minio.ObjectWriteResponse
    uploadObject(io.minio.UploadObjectArgs uploadObjectArgs)
    将文件中的内容作为存储桶中的对象上传
    io.minio.ObjectWriteResponse
    uploadObject(String bucketName, String objectName, String filename)
    将文件中的内容作为存储桶中的对象上传
    io.minio.ObjectWriteResponse
    uploadObject(String bucketName, String objectName, String filename, long partSize)
    将文件中的内容作为存储桶中的对象上传
    io.minio.ObjectWriteResponse
    uploadObject(String bucketName, String objectName, String region, String filename)
    将文件中的内容作为存储桶中的对象上传
    io.minio.ObjectWriteResponse
    uploadObject(String bucketName, String objectName, String region, String filename, long partSize)
    将文件中的内容作为存储桶中的对象上传

    从类继承的方法 cn.herodotus.engine.oss.minio.definition.service.BaseMinioService

    close, getMinioClient

    从类继承的方法 java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 构造器详细资料

    • ObjectService

      public ObjectService()
  • 方法详细资料

    • putObject

      public io.minio.ObjectWriteResponse putObject(io.minio.PutObjectArgs putObjectArgs)
      上传文件

      · 添加的Object大小不能超过5 GB。 · 默认情况下,如果已存在同名Object且对该Object有访问权限,则新添加的Object将覆盖原有的Object,并返回200 OK。 · OSS没有文件夹的概念,所有资源都是以文件来存储,但您可以通过创建一个以正斜线(/)结尾,大小为0的Object来创建模拟文件夹。

      参数:
      putObjectArgs - PutObjectArgs
      返回:
      ObjectWriteResponse
    • getObject

      public io.minio.GetObjectResponse getObject(String bucketName, String objectName)
      GetObject接口用于获取某个文件(Object)。此操作需要对此Object具有读权限。
      参数:
      bucketName - bucketName
      objectName - objectName
      返回:
      GetObjectResponse
    • getObject

      public io.minio.GetObjectResponse getObject(String bucketName, String objectName, String versionId)
      GetObject接口用于获取某个文件(Object)。此操作需要对此Object具有读权限。
      参数:
      bucketName - bucketName
      objectName - objectName
      versionId - versionId
      返回:
      GetObjectResponse
    • getObject

      public io.minio.GetObjectResponse getObject(String bucketName, String objectName, String region, String versionId)
      GetObject接口用于获取某个文件(Object)。此操作需要对此Object具有读权限。
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      versionId - versionId
      返回:
      GetObjectResponse
    • getObject

      public io.minio.GetObjectResponse getObject(io.minio.GetObjectArgs getObjectArgs)
      GetObject接口用于获取某个文件(Object)。此操作需要对此Object具有读权限。

      获取对象的数据。InputStream使用后返回必须关闭以释放网络资源。

      参数:
      getObjectArgs - GetObjectArgs
      返回:
      GetObjectResponse
    • uploadObject

      public io.minio.ObjectWriteResponse uploadObject(String bucketName, String objectName, String filename)
      将文件中的内容作为存储桶中的对象上传
      参数:
      bucketName - bucketName
      objectName - objectName
      filename - filename
    • uploadObject

      public io.minio.ObjectWriteResponse uploadObject(String bucketName, String objectName, String region, String filename)
      将文件中的内容作为存储桶中的对象上传
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      filename - filename
    • uploadObject

      public io.minio.ObjectWriteResponse uploadObject(String bucketName, String objectName, String filename, long partSize)
      将文件中的内容作为存储桶中的对象上传
      参数:
      bucketName - bucketName
      objectName - objectName
      filename - filename
      partSize - partSize
    • uploadObject

      public io.minio.ObjectWriteResponse uploadObject(String bucketName, String objectName, String region, String filename, long partSize)
      将文件中的内容作为存储桶中的对象上传
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      filename - filename
      partSize - partSize
    • uploadObject

      public io.minio.ObjectWriteResponse uploadObject(io.minio.UploadObjectArgs uploadObjectArgs)
      将文件中的内容作为存储桶中的对象上传
      参数:
      uploadObjectArgs - UploadObjectArgs
      返回:
      ObjectWriteResponse
    • downloadObject

      public void downloadObject(String bucketName, String objectName, String filename)
      将对象的数据下载到文件。
      参数:
      bucketName - bucketName
      objectName - objectName
      filename - filename
    • downloadObject

      public void downloadObject(String bucketName, String objectName, String filename, Boolean overwrite)
      将对象的数据下载到文件。
      参数:
      bucketName - bucketName
      objectName - objectName
      filename - filename
      overwrite - overwrite
    • downloadObject

      public void downloadObject(String bucketName, String objectName, String versionId, String filename, Boolean overwrite)
      将对象的数据下载到文件。
      参数:
      bucketName - bucketName
      objectName - objectName
      versionId - versionId
      filename - filename
      overwrite - overwrite
    • downloadObject

      public void downloadObject(String bucketName, String objectName, String region, String versionId, String filename, Boolean overwrite)
      将对象的数据下载到文件。
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      versionId - versionId
      filename - filename
      overwrite - overwrite
    • downloadObject

      public void downloadObject(io.minio.DownloadObjectArgs downloadObjectArgs)
      将对象的数据下载到文件。
      参数:
      downloadObjectArgs - DownloadObjectArgs
    • copyObject

      public void copyObject(String bucketName, String objectName, io.minio.CopySource copySource)
      通过服务器端从另一个对象复制数据来创建一个对象
      参数:
      bucketName - bucketName
      objectName - objectName
      copySource - CopySource
    • copyObject

      public void copyObject(String bucketName, String objectName, String region, io.minio.CopySource copySource)
      通过服务器端从另一个对象复制数据来创建一个对象
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      copySource - CopySource
    • copyObject

      public io.minio.ObjectWriteResponse copyObject(io.minio.CopyObjectArgs copyObjectArgs)
      通过服务器端从另一个对象复制数据来创建一个对象
      参数:
      copyObjectArgs - CopyObjectArgs
      返回:
      ObjectWriteResponse
    • removeObject

      public void removeObject(String bucketName, String objectName)
      移除一个对象
      参数:
      bucketName - bucketName
      objectName - objectName
    • removeObject

      public void removeObject(String bucketName, String objectName, String versionId)
      移除一个对象
      参数:
      bucketName - bucketName
      objectName - objectName
      versionId - versionId
    • removeObject

      public void removeObject(String bucketName, String objectName, String region, String versionId)
      移除一个对象
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      versionId - versionId
    • removeObject

      public void removeObject(io.minio.RemoveObjectArgs removeObjectArgs)
      移除一个对象
      参数:
      removeObjectArgs - RemoveObjectArgs
    • removeObjects

      public Iterable<io.minio.Result<io.minio.messages.DeleteError>> removeObjects(String bucketName, String region)
      懒惰地删除多个对象。它需要迭代返回的 Iterable 以执行删除
      参数:
      bucketName - bucketName
      region - region
      返回:
      Iterable<Result < DeleteError>>
    • removeObjects

      public Iterable<io.minio.Result<io.minio.messages.DeleteError>> removeObjects(io.minio.RemoveObjectsArgs removeObjectsArgs)
      懒惰地删除多个对象。它需要迭代返回的 Iterable 以执行删除
      参数:
      removeObjectsArgs - RemoveObjectsArgs
      返回:
      Iterable<Result < DeleteError>>
    • listObjects

      public Iterable<io.minio.Result<io.minio.messages.Item>> listObjects(String bucketName)
      listObjects列出桶的对象信息
      参数:
      bucketName - bucketName
      返回:
      Iterable<Result < Item>>
    • listObjects

      public Iterable<io.minio.Result<io.minio.messages.Item>> listObjects(String bucketName, Boolean recursive)
      递归listObjects列出桶的对象信息
      参数:
      bucketName - bucketName
      recursive - 是否递归
      返回:
      Iterable<Result < Item>>
    • listObjects

      public Iterable<io.minio.Result<io.minio.messages.Item>> listObjects(io.minio.ListObjectsArgs listObjectsArgs)
      listObjects列出桶的对象信息
      参数:
      listObjectsArgs - ListObjectsArgs
      返回:
      Iterable<Result < Item>>
    • composeObject

      public io.minio.ObjectWriteResponse composeObject(String bucketName, String objectName, List<io.minio.ComposeSource> composeSources)
      通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
      参数:
      bucketName - bucketName
      objectName - objectName
      composeSources - ComposeSource
      返回:
      ObjectWriteResponse
    • composeObject

      public io.minio.ObjectWriteResponse composeObject(String bucketName, String objectName, String region, List<io.minio.ComposeSource> composeSources)
      通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      composeSources - ComposeSource
      返回:
      ObjectWriteResponse
    • composeObject

      public io.minio.ObjectWriteResponse composeObject(io.minio.ComposeObjectArgs composeObjectArgs)
      通过使用服务器端副本组合来自不同源对象的数据来创建对象,比如可以将文件分片上传,然后将他们合并为一个文件
      参数:
      composeObjectArgs - ComposeObjectArgs
      返回:
      ObjectWriteResponse
    • statObject

      public io.minio.StatObjectResponse statObject(String bucketName, String objectName)
      取对象的对象信息和元数据
      参数:
      bucketName - bucketName
      objectName - objectName
      返回:
      StatObjectResponse
    • statObject

      public io.minio.StatObjectResponse statObject(String bucketName, String objectName, String region)
      取对象的对象信息和元数据
      参数:
      bucketName - bucketName
      objectName - objectName
      region - region
      返回:
      StatObjectResponse
    • statObject

      public io.minio.StatObjectResponse statObject(io.minio.StatObjectArgs statObjectArgs)
      获取对象的对象信息和元数据
      参数:
      statObjectArgs - StatObjectArgs
      返回:
      StatObjectResponse
    • getPresignedObjectUrl

      public String getPresignedObjectUrl(io.minio.GetPresignedObjectUrlArgs getPresignedObjectUrlArgs)
      获取一个指定了 HTTP 方法、到期时间和自定义请求参数的对象URL地址,也就是返回带签名的URL,这个地址可以提供给没有登录的第三方共享访问或者上传对象。
      参数:
      getPresignedObjectUrlArgs - GetPresignedObjectUrlArgs
      返回:
      url string
    • selectObjectContent

      public io.minio.SelectResponseStream selectObjectContent(io.minio.SelectObjectContentArgs selectObjectContentArgs)
      通过 SQL 表达式选择对象的内容
      参数:
      selectObjectContentArgs - SelectObjectContentArgs
      返回:
      SelectResponseStream
    • getPresignedPostFormData

      public Map<String,String> getPresignedPostFormData(io.minio.PostPolicy postPolicy)
      使用此方法,获取对象的上传策略(包含签名、文件信息、路径等),然后使用这些信息采用POST 方法的表单数据上传数据。也就是可以生成一个临时上传的信息对象,第三方可以使用这些信息,就可以上传文件。

      一般可用于,前端请求一个上传策略,后端返回给前端,前端使用Post请求+访问策略去上传文件,这可以用于JS+SDK的混合方式集成

      参数:
      postPolicy - PostPolicy
      返回:
      Map