springboot实现上传文件接口(简单版)

使用springboot实现一个最简单版本的上传文件接口

java 复制代码
private String uploadPath = "C:/imageFiles";


@RequestMapping(value = "/upload", method = RequestMethod.POST)
    private Result upload( @RequestParam("modelName") String modelName,
                           @RequestParam("file") MultipartFile multipartFile) {
        try {            
            StrBuilder sb = new StrBuilder();
            sb = sb.append(uploadPath).append(modelName);
            FileUtil.mkdir(sb.toString());
            String newFileName = System.currentTimeMillis() + multipartFile.getOriginalFilename();
            sb = sb.append("/").append(newFileName);
            FileOutputStream fileOutputStream = new FileOutputStream(sb.toString());
            fileOutputStream.write(multipartFile.getBytes());
            fileOutputStream.close();
            return new Result().success("/" + modelName + "/" + newFileName);
        } catch (IOException e) {
            e.printStackTrace();
            log.info("上传文件IO异常");
            return new Result().error("上传文件IO异常");
        }
    }

上传完成之后需要访问,可以使用springmvc静态资源代理(线上项目不推荐,建议使用nginx静态资源代理)

java 复制代码
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {


    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
// 本地资源映射
        registry.addResourceHandler("/images/**").addResourceLocations("file:" + "C:/imageFiles/");
    }
}

尝试请求一下

成功返回!

相关推荐
杨凯凡10 分钟前
【019】IO/NIO 概念:Web 开发要掌握到什么程度
java·开发语言·nio
Nicander12 分钟前
JDBC PreparedStatement的作用机制
java
MegaDataFlowers13 分钟前
解决idea报错不支持发行版本21
java·ide·intellij-idea
DevilSeagull16 分钟前
MySQL(1) 安装与配置
java·数据库·git·mysql·http·开源·github
季明洵17 分钟前
Java基础---逻辑控制(上)
java·开发语言·循环结构·分支结构·顺序结构
Cyan_RA917 分钟前
如何利用 Paddle-OCR 丝滑进行复杂版面 PDF 的批量化OCR处理?
java·linux·python·ocr·conda·paddle·surya
程序员清风19 分钟前
2026年AI编程工具对比:谁最值得用?
java·后端·面试
2601_9498166820 分钟前
springcloud springboot nacos版本对应
spring boot·spring·spring cloud
希望永不加班20 分钟前
SpringBoot 多级缓存(本地缓存 + Redis)
java·spring boot·redis·后端·缓存
C雨后彩虹22 分钟前
文件目录大小
java·数据结构·算法·华为·面试