博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
文件上传至阿里云
阅读量:6985 次
发布时间:2019-06-27

本文共 1730 字,大约阅读时间需要 5 分钟。

 
public static String uploadFile2OSS(InputStream instream, String fileName) throws IOException {        String imageName = null;        OSSClient ossClient = null;        try {            ClientConfiguration conf = new ClientConfiguration();            // 请求超时时间设置            conf.setConnectionTimeout(5000);            // 请求失败重试次数            conf.setMaxErrorRetry(3);            // 创建上传Object的Metadata,该类为阿里云文件上传内部类,可在里面配置一些基本信息,具体参见源码            ObjectMetadata objectMetadata = new ObjectMetadata();            objectMetadata.setCacheControl("no-cache");            objectMetadata.setHeader("Pragma", "no-cache");            objectMetadata.setContentType(getcontentType(fileName.substring(fileName.lastIndexOf("."))));            objectMetadata.setContentDisposition("inline;filename=" + fileName);            // 上传文件            ossClient = new OSSClient(ENDPOINT, ACCESS_KEY_ID, ACCESS_KEY_SECRET);//ENDPOINT:服务器地址,KEY_ID和KEY_SECERT为阿里云颁发的Access Id/Access Key,用于连接服务器            PutObjectResult putResult = ossClient.putObject(BUCKET_NAME, fileName, instream, objectMetadata);//BUCKET_NAME为文件上传路径,instream为文件流,            String ret = putResult.getETag();            if (!"".equals(ret)) {                imageName = fileName;            }        } finally {            if (ossClient != null) {                ossClient.shutdown();            }            try {                if (instream != null) {                    instream.close();                }            } catch (IOException e) {                e.printStackTrace();                return null;            }        }        return imageName;    }
 

 

 

ClientConfiguration客户端配置选项,例如代理设置,用户代理字符串,最大重试次数等。

OSSClient:阿里云文件上传类,

转载于:https://www.cnblogs.com/sjbas/p/10271332.html

你可能感兴趣的文章
什么样的 RPC 才是好用的 RPC
查看>>
《Adobe Premiere Pro CC经典教程》——14.6 特殊颜色效果
查看>>
Debian 项目不再提供 CD 格式的 ISO 镜像
查看>>
《设计团队协作权威指南》—第1章1.3节甘为螺丝钉
查看>>
Mozilla 将 Firefox 的命运与 Rust 语言捆绑在一起
查看>>
android 屏幕保持唤醒 不锁屏 android.permission.WAKE_LOCK
查看>>
《Unity 3D 游戏开发技术详解与典型案例》——1.3节第一个Unity 3D程序
查看>>
Airbnb数据科学团队进化论:如何由内而外实现数据驱动
查看>>
如何用机器学习预测超售,避免美联航“暴力赶客”悲剧
查看>>
css细节(实习第1天)
查看>>
腾讯Android自动化测试实战3.1.4 Robotium的控件获取、操作及断言
查看>>
《Arduino计算机视觉编程》一3.3 总结
查看>>
Bash 中的特殊字符大全
查看>>
《C语言点滴》一1.5 内功修炼
查看>>
浅析 Linux 初始化 init 系统: UpStart
查看>>
《PHP和MySQL Web开发从新手到高手(第5版)》一1.7 万事俱备,摩拳擦掌
查看>>
【Hadoop Summit Tokyo 2016】LLAP:Hive上的次秒级分析查询
查看>>
倚天遇到屠龙:LightGBM VS xgboost谁才是最强的梯度提升库?
查看>>
snownlp 中文语法分析
查看>>
Python中os和shutil模块实用方法集锦
查看>>