Springboot前后端分离实现文件上传

文件上传

文件上传是项目经常要用到的功能,Springboot可以通过配置MultipartFile 来接受文件。
项目采用的是前后端分离的模式,springboot+vue,也可以通过这种方式来实现。

代码实现

controller层代码

实现一
通过二进制流转化为file

    @ApiOperation(value = "文件上传")
    @PostMapping(value = "/upload")
    @CrossOrigin
    public String fileUpload(
             MultipartFile file) {
        try {
            byte[] bytes = file.getBytes();
            Path path = Paths.get("C:\\upload\\"+file.getOriginalFilename());
            Files.write(path,bytes);
            return "文件上传成功";
        } catch (IOException e) {
            e.printStackTrace();
            return "文件上传失败";
        }
    }

实现二
通过MultipartFile 的transferTo方法转成file

    @ApiOperation(value = "文件上传")
    @PostMapping(value = "/upload")
    @CrossOrigin
    public String fileUpload(
             MultipartFile file) {
        try {
        	String name = file.getOriginalFilename() == null ? "" : file.getOriginalFilename();
        	String path = FileUtil.getTmpPath(Enums.TmpPath.UPLOAD.getCode()) + File.separator + name;
        	File uploadFile = new File(path);
            file.transferTo(uploadFile);
            return "文件上传成功";
        } catch (IOException e) {
            e.printStackTrace();
            return "文件上传失败";
        }
    }

通过PostMan调用刚才写好的文件上传接口
在这里插入图片描述
提示文件上传成功。

Logo

前往低代码交流专区

更多推荐