com.qiniu

qiniu-java-sdk

dependency>

//java上传流文件,二进制流文件

//java 七牛上传

@RequestMapping("/file")

public ResponseEntitysendQiniuFile(MultipartFile file) {

Configuration cfg = new Configuration(Zone.zone0());

UploadManager uploadManager = new UploadManager(cfg);

String accessKey = "你自己的ak";

String secretKey = "你自己的sk";

String bucket = "你自己的bucket";

DefaultPutRet putRet = null;

try {

//密钥配置

String key = file.getOriginalFilename();

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");

//增加文件后缀名的时间戳

String str = simpleDateFormat.format(new Date());

String newKey = key.substring(0 ,key.indexOf(".")) + "-"+str + key.substring(key.lastIndexOf("."));

//例如:账号配置-20180201181253.xlsx

InputStream inputStream = file.getInputStream();

byte[] bytes = this.readStream(inputStream);

ByteArrayInputStream byteInputStream = new ByteArrayInputStream(bytes);

Auth auth = Auth.create(accessKey, secretKey);

String upToken = auth.uploadToken(bucket);

Response res = uploadManager.put(byteInputStream ,newKey,upToken,null, null);

//解析上传成功的结果

putRet = new Gson().fromJson(res.bodyString(), DefaultPutRet.class);

System.out.println(putRet.key);

System.out.println(putRet.hash);

} catch (IOException e) {

e.printStackTrace();

} catch (Exception e) {

e.printStackTrace();

}

return ResponseUtil.success(putRet);

}

public static byte[] readStream(InputStream inStream) throws Exception{

ByteArrayOutputStream outStream = new ByteArrayOutputStream();

byte[] buffer = new byte[1024];

int len = -1;

while((len = inStream.read(buffer)) != -1){

outStream.write(buffer, 0, len);

}

outStream.close();

inStream.close();

return outStream.toByteArray();

}

java上传文件到七牛_java 上传文件到七牛云相关推荐

  1. ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64)

    ASP.NET Core 简单实现七牛图片上传(FormData 和 Base64) 七牛图片上传 SDK(.NET 版本):https://developer.qiniu.com/kodo/sdk/ ...

  2. android 队列上传图片,话说android端七牛图片上传

    七牛图片上传业务流程如下图(这是官方的图): 由上图可知,要想实现图片上传,是要三端进行交互的(我刚刚开始以为只要七牛服务器跟客户端交互就行) 接下来步骤如下: 1.首先肯定是要有一个七牛的账号,并创 ...

  3. php七牛分片上传_七牛视频切片方案 - 张小超fly的个人空间 - OSCHINA - 中文开源技术交流社区...

    使用七牛 sdk 上传视频并做分片操作. step1 生成 token const qiniu = require("qiniu"); var accessKey = proc.e ...

  4. 七牛HTML 上传按钮,七牛 JSSDK 配置+常见问题

    作者:娇娇jojo 时间:2018年6月19日 一.铺垫 依靠七牛上传图片,其实有很多方法,先说说有哪些方法,以及这些方法各自的优缺点吧(移动端). way1:前端只负责选择图片,然后将图片传给服务端 ...

  5. 七牛图片上传的使用心得[PHP篇]

    曾写过一篇文章随便写了写我怎么用七牛的,发现很多小伙伴来问我,这回写个详细的. 前提: 1.已经有七牛账号,创建了空间,能看到AccessKey/SecretKey: 2.你知道怎么用composer ...

  6. Windows平台七牛批量上传工具使用教程

    因为原有的图形工具被废弃了,所重新找了个 命令行工具(qshell) 1. 先去官网 https://developer.qiniu.com/kodo/tools/1302/qshell 下载该执行文 ...

  7. 话说android端七牛图片上传

    七牛图片上传业务流程如下图(这是官方的图): 由上图可知,要想实现图片上传,是要三端进行交互的(我刚刚开始以为只要七牛服务器跟客户端交互就行) 接下来步骤如下: 1.首先肯定是要有一个七牛的账号,并创 ...

  8. html cdn不缓存,【前端开发日常 - 6】七牛CDN上的网页缓存问题及HTML禁止缓存(续)...

    需求背景 紧接着之前的内容[前端开发日常 - 5]七牛CDN上的网页缓存问题及HTML禁止缓存. 由于七牛CDN无法通过设置对单独的文件修改,而只能通过对 bucket 的统一设置修改 max-age ...

  9. java 文件保存目录结构_java web 实现文件夹上传(保留目录结构)

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 Save 改进后的代码不需要for ...

最新文章

  1. JSP中的文件操作:数据流、File类、文件浏览、目录操作、上传下载
  2. Hugging Face官方NLP课程来了!Transformers库维护者之一授课,完全免费
  3. Linux中与命令相关的命令
  4. 016_continue和break语句
  5. mac m1下安装kubenetes的dashboard
  6. java实现动态验证码源代码——jsp页面
  7. C++带参数控制台(实例)
  8. Keil自动格式化代码
  9. 外部表改为内部表_2、从外部导入数据创建表(ACCESS图解操作系列)
  10. 蓝桥杯题目练习 水题 [蓝桥杯2019初赛]矩形切割
  11. 电子书籍下载第一强贴
  12. 黑马49期 day06-mysql入门(对照视频整理的一份笔记--有改动)
  13. 发票专用驱动sjz_【智能财税大讲堂】专用发票电子化的财税信息化变革
  14. 18年第十二届东北四省赛
  15. 阎王爷让我给他做个后台管理系统(转)
  16. Mybati从持久层到大气层
  17. PHP学习笔记:环境变量
  18. java spu sku_SpringBoot电商项目实战 — 商品的SPU/SKU实现
  19. matlab 2010 linux,matlab 2010a linux 安装过程
  20. 算法岗面试必读-机器学习面试实战

热门文章

  1. 100个白球100个黑球,取出两个球,同色则补充黑色,异色则补充白色。最后剩什么颜色
  2. 双边网格学习一:2021cvpr《Ultra-High-Definition Image Dehazing via Multi-Guided Bilateral Learning》
  3. gitee使用教程(超详解)
  4. 创业圈里那些魔性的拒绝史:张朝阳拒绝马化腾、马化腾拒绝马云...
  5. 【以太网硬件七】扰码和mBnB有什么区别和相同点?
  6. 听说你觉得自己上了大学就长大懂事了...
  7. 【拆书】《深度工作》教你时间管理
  8. 2.4G遥控感应橱柜灯酒柜氛围灯
  9. Gromacs 第二步——NVT平衡
  10. python可以这样学读书笔记_Python 编程:从入门到实战 读书笔记