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

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

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静态资源代理)

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {


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

尝试请求一下

成功返回!

相关推荐

  1. SpringBoot+Vue实现简单文件(策略模式)

    2024-04-08 15:08:02       28 阅读
  2. ByteToMessageDecoder&简单实现文件

    2024-04-08 15:08:02       41 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-08 15:08:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-08 15:08:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-08 15:08:02       87 阅读
  4. Python语言-面向对象

    2024-04-08 15:08:02       96 阅读

热门阅读

  1. Stable Diffusion初级教程

    2024-04-08 15:08:02       41 阅读
  2. leecode面试经典150题

    2024-04-08 15:08:02       29 阅读
  3. Web Form

    2024-04-08 15:08:02       38 阅读
  4. 设计模式面试题(八)

    2024-04-08 15:08:02       43 阅读
  5. Mysql服务器主从相关

    2024-04-08 15:08:02       32 阅读
  6. 嵌入式算法开发系列之归一化算法

    2024-04-08 15:08:02       37 阅读
  7. 面试前端八股文十问十答第八期

    2024-04-08 15:08:02       37 阅读
  8. mysql锁

    mysql锁

    2024-04-08 15:08:02      28 阅读