MinioClient

1.配置

spring:
    minio:
      url: http://10.17.31.178:9000
      accessKey: minio
      secretKey: minio123
      bucketName: rental

2.upload

@Component
public class MinIoUtil {

    @Autowired
    private MinioClient minioClient;

    @Value("${spring.minio.url}")
    private String url;

    @Value("${spring.minio.bucketName}")
    private String bucketName;

    public MinioUploadResp upload(ByteBuf byteBuf, String fileName,  String filePath) {
        String objectName = filePath + "/" + UUID.randomUUID() + "." + fileName;
        // auto-release关闭
        try (InputStream inputStream = new ByteBufInputStream(byteBuf, false)) {
            minioClient.putObject(
                   PutObjectArgs.builder()
                           .bucket(bucketName)
                           .object(objectName)
                           .stream(inputStream, byteBuf.readableBytes(), -1)
                           .build()
            );
        } catch (Exception e) {
            log.error("上传文件失败", e);
        }
        MinioUploadResp minioUploadResp = new MinioUploadResp();
        minioUploadResp.setUrl(this.url + "/" + bucketName + "/" + objectName);
        return minioUploadResp;
    }
}
posted @ 2025-04-15 10:25  lwx_R  阅读(34)  评论(0)    收藏  举报