原创

Springboot 上传文件到亚马逊AWS服务器

之前写过一次Springboot 上传文件到阿里云OSS服务器,今天顺道把java上传文件到亚马逊AWS服务器一并写了。
首先springboot项目中添加亚马逊AWS的maven依赖,如下:

 <dependency>
            <groupId>com.amazonaws</groupId>
            <artifactId>aws-java-sdk</artifactId>
            <version>1.11.63</version>
        </dependency>

其次配置亚马逊AWS相关配置,springboot appication.yml配置如下:

然后其方法如下:

/**
     * @Title: uploadFileToS3
     * @Description: 将文件上传至S3上并且返回url
     * @param @param file 目标文件
     * @param @param hostfile 文件名
     * @param @return
     * @param @throws IOException    设定文件
     * @return String    返回类型
     * @throws
     */
    public static String uploadFileToS3(File file, String hostfile) throws IOException {
        logger.info("=========>S3文件上传开始:"+file.getName());
        inits3();
        try {
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            String dateStr = format.format(new Date());
            String fileUrl = hostfile+"/"+dateStr + "/" + new Date().getTime()+"-"+file.getName();
            //上传文件
            s3.putObject(new PutObjectRequest(bucketName, fileUrl, file).withCannedAcl(CannedAccessControlList.PublicRead));
            logger.info("==========>S3文件上传成功,S3地址:"+fileUrl);
            return "https://"+bucketName+".s3-ap-southeast-1.amazonaws.com/"+fileUrl;
        } catch (AmazonServiceException ase) {
            ase.printStackTrace();
        } catch (AmazonClientException ace) {
            ace.printStackTrace();
        }
        logger.info("==========>S3文件上传失败");
        return null;
    }

很简单的就把文件传到亚马逊AWS上了

正文到此结束
该篇文章的评论功能已被站长关闭
本文目录