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

违反建设投诉网站举报网站宣传内容

违反建设投诉网站举报,网站宣传内容,网站建设的方法有哪些内容,如何在亚马逊开店文章目录 配置1. 部署MinIO服务2. 整合SpringBoot 功能实现1. 文件上传2. 文件下载 总结 配置 1. 部署MinIO服务 这里以docker为例: 安装minio命令docker run -p 9000:9000 -p 9001:9001 \ --name minio \ -v /path/to/data:/data \ -e "MINIO_ROOT_USERmin…

文章目录

  • 配置
    • 1. 部署MinIO服务
    • 2. 整合SpringBoot
  • 功能实现
    • 1. 文件上传
    • 2. 文件下载
  • 总结

配置

1. 部署MinIO服务

这里以docker为例:

  1. 安装minio命令
    docker run -p 9000:9000 -p 9001:9001 \
    --name minio \
    -v /path/to/data:/data \
    -e "MINIO_ROOT_USER=minioadmin" \
    -e "MINIO_ROOT_PASSWORD=minioadmin" \
    minio/minio server /data --console-address ":9001"
    
    表示MinIO 的 API 服务默认运行在 9000 端口,并且映射到容器的9000端口
    MinIO 的控制台(Web UI)默认运行在 9001 端口。
    注意:服务器部署记得开放9000和9001端口。
  2. 登录MinIO的ui控制台“ip+端口号”
    得到如下界面,输入配置的用户名和密码,也就是docker run命令中的
    -e "MINIO_ROOT_USER=minioadmin" \
    -e "MINIO_ROOT_PASSWORD=minioadmin" \
    
    在这里插入图片描述

2. 整合SpringBoot

  1. maven依赖:
    <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.14</version>
    </dependency>
    
  2. application.yaml
    minio:endpoint: http://你部署minio服务的ip地址:9000 # MinIO 服务器地址access-key: minioadmin          # 访问密钥secret-key: minioadmin          # 秘密密钥bucket: test            # 默认存储桶名称
    
  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.endpoint}")private String endpoint;@Value("${minio.access-key}")private String accessKey;@Value("${minio.secret-key}")private String secretKey;@Beanpublic MinioClient minioClient() {return MinioClient.builder().endpoint(endpoint).credentials(accessKey, secretKey).build();}
    }
    

功能实现

以为文件上传、下载为例:

1. 文件上传

  1. controller层

    @RestController
    @RequestMapping("/file/")
    public class FileController {@Autowiredprivate FileService fileService;/*** 文件上传* @param file* @param fileName*/@PostMapping("upload")public Result uploadFile(@RequestParam("file") MultipartFile file, @RequestParam("fileName") String fileName){String msg = fileService.uploadFile(file, fileName);return Result.success(msg);}
    
  2. service层

    public interface FileService {String uploadFile(MultipartFile file, String fileName);
    }
    
    @Service
    public class FileServiceImpl implements FileService {@Autowiredprivate MinioClient minioClient;@Value("${minio.bucket}")private String bucketName;/*** 文件上传* @param file 需要上传的文件* @param fileName 文件在 minio 中存储的名称*/@Overridepublic String uploadFile(MultipartFile file, String fileName) {try {//MultipartFile 转换为 InputStream,以便 MinIO 客户端可以读取文件内容InputStream inputStream = file.getInputStream();//将文件上传到 MinIO 服务器minioClient.putObject(PutObjectArgs.builder().bucket(bucketName)//文件存储的存储桶名称.object(fileName).stream(inputStream, file.getSize(), -1)//文件大小, partSize设置为 -1,MinIO 会使用默认的分块大小(通常是 5MB)进行上传。.contentType(file.getContentType())//文件的 MIME 类型.build());}catch (Exception e){return "文件上传失败";}return "文件上传成功";}
    }
    
  3. 测试结果:
    在这里插入图片描述
    在ui界面中可以查看到上传的文件:
    在这里插入图片描述

2. 文件下载

  1. controller层:

    @RestController
    @RequestMapping("/file/")
    public class FileController {@Autowiredprivate FileService fileService;/*** 文件下载* @param fileName* @return*/@GetMapping("download/{fileName}")public Result downloadFile(@PathVariable String fileName, HttpServletResponse response) throws IOException {InputStream inputStream = fileService.downloadFile(fileName);response.setContentType("application/octet-stream");response.setHeader("Content-Disposition", "attachment; fileName" + fileName);IOUtils.copy(inputStream, response.getOutputStream());response.flushBuffer();return Result.success();}
    }
    
  2. service层:

    public interface FileService {InputStream downloadFile(String fileName);
    }
    
    @Service
    public class FileServiceImpl implements FileService {@Autowiredprivate MinioClient minioClient;@Value("${minio.bucket}")private String bucketName;@Overridepublic InputStream downloadFile(String fileName) {//从 MinIO 对象存储中读取的数据InputStream inputStream = null;try {inputStream = minioClient.getObject(GetObjectArgs.builder().object(fileName)//文件名称.bucket(bucketName)//文件所在存储桶的位置.build());} catch (Exception e) {return null;}return inputStream;}
    
  3. 测试结果:
    便于测试,我这里下载方法是显示下载文件的内容,结果正确。
    在这里插入图片描述

总结

与MQ类似,需要先部署服务,也有相应的图形化界面便于查看。写好配置文件,使用MinIO提供好的方法类即可。

以上为个人学习分享,如有问题,欢迎指出:)


文章转载自:

http://TPEIJoSf.tbbxn.cn
http://HVDJh0qU.tbbxn.cn
http://q6sj28DL.tbbxn.cn
http://xsolSRgd.tbbxn.cn
http://wCevTeAI.tbbxn.cn
http://bcaXusdY.tbbxn.cn
http://aVSQLLDS.tbbxn.cn
http://sBTWnB4E.tbbxn.cn
http://fjSdSugQ.tbbxn.cn
http://lDaN89lY.tbbxn.cn
http://lV43fKo7.tbbxn.cn
http://Jtcaaq9g.tbbxn.cn
http://SwmBICFb.tbbxn.cn
http://hM5FhZb5.tbbxn.cn
http://nhNkDpWH.tbbxn.cn
http://2Si1fU23.tbbxn.cn
http://jpRe1ar1.tbbxn.cn
http://5DuzBChS.tbbxn.cn
http://rLXSw8Ab.tbbxn.cn
http://uYyDteyg.tbbxn.cn
http://xSyMGne6.tbbxn.cn
http://zYlly7aM.tbbxn.cn
http://x03kiStH.tbbxn.cn
http://ihrwuRX0.tbbxn.cn
http://C8hJ50uh.tbbxn.cn
http://U2Olvdfg.tbbxn.cn
http://EZYS5WWs.tbbxn.cn
http://p54kbLyi.tbbxn.cn
http://ze3iln88.tbbxn.cn
http://K1QhjDv2.tbbxn.cn
http://www.dtcms.com/wzjs/769053.html

相关文章:

  • 天津市建设行业联合会网站广州网站建设 全包
  • 做代金券的网站网站错误页面模板
  • 建立网站的公司做一个网站要怎么做
  • 网站怎么做搜索引擎优化wordpress更改忘记密码样式
  • 东莞网站制作公司是什么小红书网站开发形式选择
  • 泉州企业自助建站上海交通大学网站建设
  • 建设门户网站申请报告怎么实现网站建设报价方案
  • 查询网站流量的网址装饰设计做什么的
  • 开发个微网站多少钱做视频找空镜头那个网站比较全
  • 网站备案资质国内做网站最好的公司
  • 公司网站高端网站建设苏州建设
  • 安徽合肥做网站的公司有哪些软文生成器
  • 福州市城乡建设局网站手机下载视频网站模板下载失败
  • 用dw做的网站怎么发到网上熬夜必备黄
  • 电商网站建设网seo搜索推广费用多少
  • 网站建设论文选题怎么查看网站点击量
  • 青岛建设管理局网站做影视网站存储视频会侵权吗
  • 阳澄湖大闸蟹网站建设关键词优化策略
  • 做培训的网站地旺建设官方网站
  • 相亲网站做期货现货贵金属的人建筑服务网站企业
  • 网站开发技术实验总结一件代发的货源怎么找
  • 专业网站设计服务在线咨询如何看网站是html几代做的
  • 如何获得网站网页设计班级网站怎么做
  • 关于开展全县中小学校网站群建设的请示报告网店网站建设规划方案
  • wordpress 选择中文营销型网站整体优化
  • 凡科建的网站可以做seo吗网站开发中安全性
  • 网站建设导航栏游戏开发物语攻略
  • 后缀cc的网站百度热度
  • 如何查网站的备案信息2017网站开发发展前景
  • 陕西建设交通集团招聘信息网站为什么要做网站建设