SpringBoot-集成Minio
要在Spring Boot中集成MinIO,你需要做以下几步:
- 添加MinIO客户端库依赖到你的
pom.xml
文件中。 - 配置MinIO客户端。
- 创建服务来使用MinIO客户端进行文件上传、下载和其他操作。
以下是一个简单的例子:
1. 添加依赖到pom.xml
<dependency>
<groupId>io.minio</groupId>
<artifactId>minio</artifactId>
<version>RELEASE_VERSION</version>
</dependency>
2. 配置MinIO客户端
在application.properties
或application.yml
中添加MinIO的配置信息:
minio.url=http://127.0.0.1:9000
minio.access-key=your_access_key
minio.secret-key=your_secret_key
minio.bucket-name=your_bucket_name
3. 创建MinIO服务
import io.minio.MinioClient;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MinioConfig {
@Value("${minio.url}")
private String minioUrl;
@Value("${minio.access-key}")
private String accessKey;
@Value("${minio.secret-key}")
private String secretKey;
@Bean
public MinioClient minioClient() {
try {
return MinioClient.builder()
.endpoint(minioUrl)
.credentials(accessKey, secretKey)
.build();
} catch (Exception e) {
throw new RuntimeException("Error while creating MinioClient", e);
}
}
}
4. 使用MinIO服务上传和下载文件
import io.minio.MinioClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.InputStream;
@Service
public class MinioService {
private final MinioClient minioClient;
@Autowired
public MinioService(MinioClient minioClient) {
this.minioClient = minioClient;
}
public void uploadFile(InputStream data, String fileName, String bucketName) throws Exception {
minioClient.putObject(
MinioClient.PutObjectArgs.builder()
.bucket(bucketName)
.object(fileName)
.st
评论已关闭