当前位置: 首页 > news >正文

SpringBoot集成minio,并实现文件上传

SpringBoot集成minio

    • 什么是minio
    • SpringBoot集成minio
      • 1、引入minio依赖
      • 2、配置Minio相关参数
      • 3、在代码里读取自定义的minio配置
      • 4、在minio配置类里,注册ConfigurationProperties
    • 实现文件上传到minio
      • 1、利用SpringMVC实现接口的异常全局处理
      • 2、返回文件路径给前端
      • 3、返回文件流给前端

什么是minio

MinIO 是一个高性能的对象存储系统

SpringBoot集成minio

1、引入minio依赖

<dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.2.0</version>
</dependency>

2、配置Minio相关参数

自定义minio键

在这里插入图片描述

设置文件上传的大小

在这里插入图片描述

3、在代码里读取自定义的minio配置

// Not registered via @EnableConfigurationProperties,
// marked as Spring component, or scanned via @ConfigurationPropertiesScan
// 需要把使用@ConfigurationProperties注解的类,
// 通过@EnableConfigurationProperties注册到使用MinioProperties的MinioConfiguration配置类中
@ConfigurationProperties(prefix = "minio")
@Data
public class MinioProperties {private String endpoint;private String accessKey;private String secretKey;private String bucketName;
}

4、在minio配置类里,注册ConfigurationProperties

@Configuration
@EnableConfigurationProperties(MinioProperties.class)
// 表示com.zhw.lease.common.minio包下的所有ConfigurationProperties都会被注册
// @ConfigurationPropertiesScan("com.zhw.lease.common.minio")
public class MinioConfiguration {@Autowiredprivate MinioProperties properties;@Beanpublic MinioClient minioClient() {return MinioClient.builder().endpoint(properties.getEndpoint()).credentials(properties.getAccessKey(), properties.getSecretKey
http://www.lryc.cn/news/491656.html

相关文章:

  • centos为用户赋予sudo权限
  • SAP 零售方案 CAR 系统的介绍与研究
  • Android Framework AudioFlinge 面试题及参考答案
  • 嵌入式系统与单片机工作原理详解
  • Diving into the STM32 HAL-----Timers笔记
  • 对比 MyBatis 批处理 BATCH 模式与 INSERT INTO ... SELECT ... UNION ALL 进行批量插入
  • AI大模型如何重塑软件开发流程与模式
  • NUXT3学习日记五(composables、$fetch和useAsyncData、useFetch,lazy,refresh)
  • MySQL原理简介—10.SQL语句和执行计划
  • wordpress二开-WordPress新增页面模板-说说微语
  • 001 MATLAB介绍
  • Linux—进程概念学习-03
  • 低速接口项目之串口Uart开发(二)——FIFO实现串口数据的收发回环测试
  • java: itext8.05 create pdf
  • 如何用通义灵码快速绘制流程图?
  • vue 预览pdf 【@sunsetglow/vue-pdf-viewer】开箱即用,无需开发
  • Java NIO 核心知识总结
  • 疑难Tips:NextCloud域名访问登录时卡住,显示违反内容安全策略
  • C 语言学习-06【指针】
  • 如何快速将Excel数据导入到SQL Server数据库
  • 【人工智能】Python在机器学习与人工智能中的应用
  • 使用八爪鱼爬虫抓取汽车网站数据,分析舆情数据
  • 什么是事务?事务有哪些特性?
  • 玩转合宙Luat教程 基础篇④——程序基础(库、线程、定时器和订阅/发布)
  • 24.<Spring博客系统①(数据库+公共代码+持久层+显示博客列表+博客详情)>
  • webp 网页如何录屏?
  • 丹摩征文活动|实现Llama3.1大模型的本地部署
  • Spring Boot 2 和 Spring Boot 3 中使用 Spring Security 的区别
  • 【数据结构与算法】 LeetCode:回溯
  • SpringBoot线程池的使用