🚀 SpringBoot整合MinIO详细步骤 🚀 |
🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀
🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
🌲 作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎
🌲 恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻
🌲 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯
🚀 SpringBoot整合MinIO详细步骤 🚀 |
🍔 目录
🍀 一.SpringBoot整合MinIO详细步骤
🥦 1.1 创建项目 & 引入依赖
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>8.2.2</version>
</dependency>
🥦 1.2 创建Bucket
选择创建Bucket按钮
自定义名称,创建
🥦 1.3 创建用户
维护相关的用户来管理相关的操作,创建用户。
设置账号/密码以及权限,保存即可。
🥦 1.4 编写配置文件
根据我们上面的操作配置相关的内容即可!
minio.endpoint=http://IP地址:9000
minio.accessKey=ljw
minio.secretKey=12345678
minio.bucketName=test
🥦 1.5 创建MinioConfig配置类
@Data
@Component
@ConfigurationProperties(prefix = "minio")
public class MinioConfig {
private String endpoint;
private String accessKey;
private String secretKey;
private String bucketName;
@Bean
public MinioClient minioClient() {
return MinioClient.builder()
.endpoint(endpoint)
.credentials(accessKey, secretKey)
.build();
}
}
🍀 二.测试
注意:下面的代码只是一个案例,可以优化的更好!
🥦 2.1 文件上传
@Autowired(required = false)
MinioClient minioClient;
@Autowired(required = false)
MinioConfig minioConfig;
@Test
void contextLoads() throws Exception{
File file = new File("C:\\Users\\Administrator\\Desktop\\an.png");
FileInputStream fileInputStream = new FileInputStream(file);
minioClient.putObject(PutObjectArgs.builder()
.bucket(minioConfig.getBucketName())
.object("111.png")
.stream(fileInputStream, fileInputStream.available(), -1)
.contentType("image/png")
.build());
}
运行结果:
效果预览:
🥦 2.2 文件下载
@Autowired(required = false)
MinioClient minioClient;
@Autowired(required = false)
MinioConfig minioConfig;
@Test
void test() throws Exception{
InputStream inputStream = minioClient.getObject(GetObjectArgs.builder()
.bucket(minioConfig.getBucketName())
.object("111.png")
.build());
OutputStream outputStream=new FileOutputStream(new File("C:\\Users\\Administrator\\Desktop\\123.png"));
int index = 0 ;
while((index = inputStream.read())!=-1){
outputStream.write(index);
}
outputStream.flush();
outputStream.close();
inputStream.close();
}
运行结果:
效果预览:
🍀 三.总结
本篇文章主要讲解了SpringBoot整合MinIO详细步骤,MinIO是目前非常流行的分布式对象存储系统(OSS),安装部署过程需要大家熟练掌握,同学们可以动手实操练习。
💬 四.共勉
最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉! |