shizhan--10

java

运行

复制代码
@RestController
@RequestMapping("upload")
public class UploadController {

    @Autowired
    private QiniuUtils qiniuUtils;

    @PostMapping
    public Result upload(@RequestParam("image") MultipartFile file){
        // 1. 获取原始文件名
        String originalFilename = file.getOriginalFilename();
        // 2. 生成唯一文件名(UUID + 原文件后缀)
        String fileName = UUID.randomUUID().toString() + "." + StringUtils.substringAfterLast(originalFilename, ".");
        // 3. 调用工具类上传到七牛云
        boolean upload = qiniuUtils.upload(file, fileName);
        // 4. 根据上传结果返回响应
        if (upload){
            return Result.success(QiniuUtils.url + fileName);
        }
        return Result.fail(20001,"上传失败");
    }
}

核心流程

  1. 接收前端 multipart/form-data 提交的文件(参数名 image
  2. 为文件生成唯一的 UUID 文件名,避免覆盖
  3. 调用七牛云工具类完成上传
  4. 上传成功则返回文件访问 URL,失败返回错误码
相关推荐
小钻风336618 小时前
Spring Boot 文件上传详解:深入理解 MultipartFile 的使用与原理
java·开发语言
其美杰布-富贵-李18 小时前
Spring Boot 工程开发全流程说明
java·spring boot·后端
qq_4523962319 小时前
第二篇:《Go 开发环境搭建:SDK、IDE、Module 与 Hello World》
开发语言·ide·golang
天青色等烟雨..20 小时前
全流程ArcGISPro空间分析、三维建模、可视化及Python融合应用技术
开发语言·python
丰锋ff20 小时前
1.2 Qt常用基础类型
开发语言·qt
前端双越老师20 小时前
如何以前端视角(非0基础)学 Java ?
java·node.js·全栈
dear_bi_MyOnly20 小时前
【SpringBoot配置文件】
java·spring boot·后端·学习·spring·java-ee·学习方法
做个文艺程序员20 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
冰暮流星21 小时前
javascript之String方法介绍
开发语言·javascript·ecmascript
nianniannnn21 小时前
Qt QMessageBox知识点
开发语言·数据库·qt