文章插图
- 连接成功后,我们可以看见之前我们创建的存储桶和上传的文件
文章插图
S3 Browser
这个工具功能还是很强大的
文章插图
- 如果你想修改存储桶的访问权限的话直接通过
Permissions
标签修改即可 。
文章插图
10. 利用Java客户端调用MinIO参考文档:https://docs.min.io/docs/java-client-api-reference.html
10.1 引入依赖在service-product模块中添加依赖
<dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.2.0</version></dependency>
10.2 添加配置文件minio:endpointUrl: http://IP:9000accessKey: adminsecreKey: admin123456bucketName: file
10.3 编写java程序@RestController@RequestMapping("admin/product")public class FileUploadController {//获取文件上传对应的地址@Value("${minio.endpointUrl}")public String endpointUrl;@Value("${minio.accessKey}")public String accessKey;@Value("${minio.secreKey}")public String secreKey;@Value("${minio.bucketName}")public String bucketName;//文件上传控制器@PostMapping("fileUpload")public Result fileUpload(MultipartFile file) throws Exception{//准备获取到上传的文件路径!String url = "";// 使用MinIO服务的URL,端口,Access key和Secret key创建一个MinioClient对象// MinioClient minioClient = new MinioClient("https://play.min.io", "Q3AM3UQ867SPQQA43P2F", "zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG");MinioClient minioClient =MinioClient.builder().endpoint(endpointUrl).credentials(accessKey, secreKey).build();// 检查存储桶是否已经存在boolean isExist = minioClient.bucketExists(BucketExistsArgs.builder().bucket(bucketName).build());if(isExist) {System.out.println("Bucket already exists.");} else {// 创建一个名为asiatrip的存储桶,用于存储照片的zip文件 。minioClient.makeBucket(MakeBucketArgs.builder().bucket(bucketName).build());}//定义一个文件的名称 : 文件上传的时候 , 名称不能重复!String fileName = System.currentTimeMillis()+ UUID.randomUUID().toString();// 使用putObject上传一个文件到存储桶中 。//minioClient.putObject("asiatrip","asiaphotos.zip", "/home/user/Photos/asiaphotos.zip");minioClient.putObject(PutObjectArgs.builder().bucket(bucketName).object(fileName).stream(file.getInputStream(), file.getSize(), -1).contentType(file.getContentType()).build());//System.out.println("/home/user/Photos/asiaphotos.zip is successfully uploaded as asiaphotos.zip to `asiatrip` bucket.");//文件上传之后的路径: http://192.168.86.101:9000/file/xxxxxxurl = endpointUrl+"/"+bucketName+"/"+fileName;System.out.println("url:\t"+url);//将文件上传之后的路径返回给页面!return Result.ok(url);}}
推荐阅读
- 谱尼第二封印怎么打几米(怎么打谱尼第二道和第三道封印)
- var,let和const的不同 第一百零六篇:变量的不同声明
- 纸嫁衣4红丝缠第四章门密码锁密码是什么
- 纸嫁衣4第五章游戏攻略
- 纸嫁衣4红丝缠第四章怎么速通
- 顶楼第二季是原班人马吗_顶楼第二季演员表
- 纸嫁衣4红丝缠第五章木板上小人怎么摆放
- .NET周报【11月第1期 2022-11-07】
- 第2-1-4章 SpringBoot整合FastDFS文件存储服务
- 上古卷轴5怎样结婚(上古卷轴5第一美女)