SpringBoot整合MinIO详细步骤 |
算法刷题专栏 | 面试必备算法 | 面试高频算法
越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
作者简介:硕风和炜,CSDN-Java领域优质创作者,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享
恭喜你发现一枚宝藏博主,赶快收入囊中吧
人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?
SpringBoot整合MinIO详细步骤 |
<dependency>
<groupId>io.miniogroupId>
<artifactId>minioartifactId>
<version>8.2.2version>
dependency>
维护相关的用户来管理相关的操作,创建用户。
设置账号/密码以及权限,保存即可。
根据我们上面的操作配置相关的内容即可!
minio.endpoint=http://IP地址:9000
minio.accessKey=ljw
minio.secretKey=12345678
minio.bucketName=test
@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();
}
}
注意:下面的代码只是一个案例,可以优化的更好!
@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());
}
效果预览:
@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),安装部署过程需要大家熟练掌握,同学们可以动手实操练习。
最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉! |