栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

minio的学习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

minio的学习

1.什么是minio

它是对象存储服务OSS(Object Storage Service)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。总之是个存储文件的服务器,可以分布式,很强。

2.minio的安装及使用

这里就讲windows版本

  1. 进入官网:https://min.io/,点击Dowload选择windows下载。
  2. 下载好放入某个文件夹,打开cmd,进入放入exe的文件夹
  3. 输入 minio.exe server E:miniodata,最后这个E…是你存储文件的地址
2.minio的使用
  1. 进入浏览器输入上面的地址,输入账号密码。
  2. bucket是水桶的意思,顾名思义其实就是把文件装入的文件夹。创建一个bucket,它就会在你开初输入命令指定的地址下创建一个文件夹,如图:
  3. 创建bucket后可以上传文件,点击upload,它会出现两个一个是folder(文件夹),一个是file(文件),上传完成后,你可以发现你创建的bucket里多了一个文件,但是它是打不开的,必须通过minio才能使用。
  4. 如何使用呢?点击上传的文件信息。

    你想查看就点击preview,下载就点击download,分享给别人点击share,然后就会生成一条url 。**注意:**给别人分享minio默认会7天有限。
  5. 如何把分享设为永久有效呢?因为你开发的话不可能只让某张图片文件只有7天有效,只需要bucket的权限设置为public就可以了。然后输入路径
3. springboot集成minio
  1. 导入依赖
        
        
            io.minio
            minio
            8.0.3
        
  1. yml配置
spring:
  # 配置文件上传大小限制
  servlet:
    multipart:
      max-file-size: 200MB
      max-request-size: 200MB
minio:
  endpoint: http://127.0.0.1:9000 #服务器地址
  accessKey: minioadmin   #账号
  secretKey: minioadmin   #密码
  bucketName: test   #桶名
  1. 查看官方api接口
  2. 操作
//创建minioClient对象
MinioClient minio = MinioClient.builder().endpoint(你的地址).credentials(账号,密码).build();
//查看有所有桶
List blist = minio.listBuckets();//它返回的是一个List,在遍历该对象,使用bucket的name方法获取它的名字
for (Bucket b : blist){
	b.name();
}
//删除桶
public void removeBucket(RemoveBucketArgs args)
//查看桶是否存在
public boolean bucketExists(BucketExistsArgs args)
//创建一个新桶
public void makeBucket(MakeBucketArgs args)
//遍历一个桶的所有文件
ListObjectsArgs test = ListObjectsArgs.builder().bucket("test").build();//test为桶名
for (Result listObject : minioClient.listObjects(test)) {
    Item item = listObject.get();//一个文件就是一个item
    System.out.println(item.objectName());
}
//使用流方式得到文件
public GetObjectResponse getObject(GetObjectArgs args)//Gets data of an object. Returned InputStream must be closed after use to release network resources.
//下载文件
public void downloadObject(DownloadObjectArgs args)//Downloads data of an object to file.
minioClient.downloadObject(DownloadObjectArgs.builder().bucket("test").object("2.png").filename("D:\4.png").build());
//上传文件
public void uploadObject(UploadObjectArgs args)
minioClient.uploadObject(UploadObjectArgs.builder().bucket("test").object("4.png").filename("D:\4.png").build());
public ObjectWriteResponse putObject(PutObjectArgs args)//流的形式上文件
  1. 参考:minio方法,minio集成springboot
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1028860.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号