java 文件上传

该代码示例展示了在SpringMVC应用中如何配置最大文件上传限制,并实现将文件上传到阿里云对象存储服务(OSS)。在上传前,对文件的空值和大小进行校验,然后使用OSS客户端进行文件存储,并返回文件的公共访问URL。如果上传过程中出现异常,会捕获并抛出错误信息。
摘要由CSDN通过智能技术生成
spring:
  servlet:
    multipart:
      # 根据实际需求作调整
      # 默认最大上传文件大小为10M,单个文件大小
      max-file-size: 10MB
      # 默认最大请求大小为15M,总上传的数据大小
      max-request-size: 15MB

public String uploadFile( MultipartFile multipartFile) {
    // 校验文件是否为空
    if (multipartFile.getSize() == 0) {
        throw new RunTimeException("文件不能为空!");
    }
    // 校验文件大小
    long size = multipartFile.getSize();
    if(size > FILE_SIZE){
        throw new RunTimeException("文件大小不能超过10MB!");
    }
    try (final InputStream inputStream = multipartFile.getInputStream()) {
        String  fileName = this.aliyunOSSProperties.getFolder() + "/" +        multipartFile.getOriginalFilename();
        ObjectMetadata metadata = new ObjectMetadata();
        metadata.setContentType("application/octet-stream");
        this.ossClient.putObject(this.aliyunOSSProperties.getBucketName(), fileName, inputStream,metadata);
        return this.aliyunOSSProperties.getBucketUrl() + "/" + fileName;
    } catch (Exception exception) {
        log.error(exception.getMessage(), exception);
        throw new ResultException(DefaultResultEnum.FAIL);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值