SpringBoot集成Minio实现文件上传
以下是一个简化的Spring Boot集成MinIO实现文件上传的例子:
import io.minio.MinioClient;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
@Service
public class MinioService {
@Autowired
private MinioClient minioClient;
@Value("${minio.bucket-name}")
private String bucketName;
public void uploadFile(MultipartFile file) throws IOException, NoSuchAlgorithmException, InvalidKeyException {
InputStream inputStream = file.getInputStream();
String fileName = file.getOriginalFilename();
minioClient.putObject(bucketName, fileName, inputStream, file.getContentType());
inputStream.close();
}
}
在这个例子中,我们定义了一个MinioService
类,它有一个uploadFile
方法用于处理文件上传。该方法接收一个MultipartFile
对象作为参数,并使用MinIO的putObject
方法将文件上传到指定的存储桶中。
注意:在实际使用中,你需要配置MinIO的客户端连接信息,例如服务器地址、访问密钥和秘密密钥,并且创建一个存储桶。这些配置通常在Spring的.properties
或.yml
配置文件中设置,并通过@Value
注解注入到服务类中。
评论已关闭