Spring注解开发文件,实现图片上传功能

第一步:
/**
* 配置多媒体解析器
* 配置多媒体解析器,方法名须为 multipartResolver
*
* @return
*/

    @Bean
    public CommonsMultipartResolver multipartResolver() {
        CommonsMultipartResolver resolver = new CommonsMultipartResolver();
        //设置上传文件的总大小,单位是字节 100MB
        resolver.setMaxUploadSize(1024 * 1024 * 100);
        //设置每个文件上传的大小,单位是字节 10MB
        resolver.setMaxUploadSizePerFile(1024 * 1024 * 10);
        return resolver;
    }

第二部:在Spring核心配置类中导入多媒体加载器所在的配置类SpringMvcSupport

@Import({SpringMvcSupport.class})

第三步:在Controller层添加请求方法

 /**
     * 图片上传
     *
     * @param file
     * @param request
     * @return
     * @throws Exception
     */
    @PostMapping("/upload")   // 请求路径
    public Result upload(MultipartFile file, HttpServletRequest request) throws Exception{
        //1.获取项目根路径下 images的具体路径
        String path = request.getServletContext().getRealPath("/image");
        //2.获取文件的名称
        String fileName = file.getOriginalFilename();
        //3.将文件名使用UUID进行替换,避免出现重名导致的错误
        //3.1获取文件的后缀名
        String extName = fileName.substring(fileName.lastIndexOf("."));
        //3.2使用UUID生成新的文件名
        String newFileName = UUID.randomUUID()+ extName;
        //4.将文件进行拷贝
        file.transferTo(new File(path+"/"+newFileName));
        //5.返回文件路径
        return new Result(Code.UPLOAD_OK,"文件上传成功","/images/"+newFileName);
    }
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值