2019独角兽企业重金招聘Python工程师标准>>>

1. 服务接口定义

/**

* 文件上传  1:头像 2:显示图片 3:个人封面  :4:基础图片

* @param request

* @param response

* @param uid 用户id

* @param userType 文件上传  1:头像 2:显示图片 3:个人封面  :4:基础图片 0:视频

* @param files 上传的文件对象

* @return

* @throws Exception

*/

@RequestMapping(value = "/upload/base64Code", method = RequestMethod.POST)

public ResponseVO fileuploadBase64(@RequestBody JSONObject json, HttpServletRequest request, HttpServletResponse response) throws Exception {

String uid = json.optString("uid");

String userType = json.optString("userType");

String base64Code = json.optString("base64Code");

String oldName = json.optString("oldName");

String suffix = json.optString("suffix");

//获取当前登陆用户

if(StringUtils.isEmpty(uid)){

return CloudResponseCode.buildEnumResponseVO(CloudResponseCode.USER_ID_NOT_NULL, null);

}

//上传文件新名字

String newName = String.valueOf(new Date().getTime());

String fileKey =  CloudConstant.VITAL_USER_INFO_PATH + uid + "/" + newName + "." + suffix;

AliyunUtils.getInstance().uploadByte(base64Code.getBytes(), fileKey);

......

.......

return CloudResponseCode.buildEnumResponseVO(CloudResponseCode.FILEUPLOAD_SUCCESS, obj);

}

2. oss utils封装

/**

* 上传byte数组

* @param fileByte

* @param fileKey

*/

public void uploadByte(byte[] fileByte, String fileKey){

// 创建OSSClient实例

OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);

// 上传byte数组

ossClient.putObject(CloudConstant.BUCKET, fileKey, new ByteArrayInputStream(fileByte));

// 关闭client

ossClient.shutdown();

}

/**

* 上传文件流

* @param inputStream

* @param fileKey

*/

public void uploadInputStream(InputStream inputStream, String fileKey){

// 创建OSSClient实例

OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);

// 上传文件流

ossClient.putObject(CloudConstant.BUCKET, fileKey, inputStream);

// 关闭client

ossClient.shutdown();

}

/**

* 删除文件

* @param fileKey

*/

public void deleteFile(String fileKey){

// 创建OSSClient实例

OSSClient ossClient = new OSSClient(CloudConstant.ENDPOINT, CloudConstant.ACCESSKEYID, CloudConstant.ACCESSKEYSECRET);

// 删除文件

ossClient.deleteObject(CloudConstant.BUCKET, fileKey);

// 关闭client

ossClient.shutdown();

}

3. 界面效果

完整的项目源码来源  欢迎大家一起学习研究相关技术,源码获取请加求求:2670716182

转载于:https://my.oschina.net/u/3872209/blog/1837149

【科普】OSS存储的基本操作相关推荐

  1. 从AWS S3换成阿里云OSS存储所踩的坑

    因业务需要,AWS S3 不能使用了,要换成阿里云OSS存储和下载.简单作以记录,以作备忘. 1.参照https://help.aliyun.com/product/31815.html?spm=51 ...

  2. oss客户端工具_阿里云服务器ECS上使用ossfs工具挂载阿里云OSS存储

    介绍:阿里云对象存储服务(Object Storage Service,简称OSS)可以提供基于网络的数据存取服务.使用OSS,可以通过网络随时存储和调用包括文本.图片.音频和视频等在内的各种非结构化 ...

  3. mysql数据库备份到oss_备份MySQL数据库并上传到阿里云OSS存储

    1. 环境配置 要将本地文件上传到阿里云oss中, 必须使用阿里云提供的工具 ossutil, 有32位,也有64位的, Linux和Windows都有.具体可以到阿里云官网下载 本文以Linux系统 ...

  4. 二叉树的三叉链表存储和基本操作

    三叉链表存储表示 改进于二叉链表,增加指向父节点的指针,能更好地实现结点间的访问. 存储结构 /* 二叉树的三叉链表存储表示 */typedef struct BiTPNode{TElemType d ...

  5. django图片上传到oss_django 配置阿里云OSS存储media文件的例子

    1. 安装django-aliyun-oss2-storage包 linux上用 pip install django-aliyun-oss2-storage 无报错,顺利安装 windows上报错: ...

  6. 前端(react)上传到阿里云OSS存储 实例

    需求背景 由于现有的后台管理系统,上传的视频越来越大,加上上传视频较慢,后端小哥提出直接从前端上传视频或者其他文件到阿里云OSS存储. 阿里云OSS 阿里云OSS文档介绍,这里不做过多赘述 安装 原本 ...

  7. C#阿里云OSS——存储

    文章目录 阿里云OSS是什么? 使用步骤 开通OSS和创建AccessKey 项目应用 安装Aliyun.OSS.SDK.NetCore包 编写OSS帮助类,封装SDK提供的方法 AliyunOSSH ...

  8. 【阿里云】ECS 使用 Ossfs 挂载 OSS 存储

    ECS 和 OSS 都是阿里云旗下的产品,ECS 是云服务器,OSS是对象存储,用于存储数据,个人感觉类似于数据库.而通过Ossfs就可以将ECS和OSS连接起来,将OSS的一个bucket挂载在EC ...

  9. 【ReactJs+springBoot项目——租房】第3章:OSS存储图片+本地存储+ 房源列表查询+GraphQL入门

    图片存储解决方案的分析 阿里云OSS存储方案的实现 本地存储方案的实现 整合前端系统实现图片上传功能 实 现 房 源 列 表 查 询 功 能 GraphQL的入门 1.图片存储解决方案 在新增房源中, ...

最新文章

  1. sql server 2005 T-SQL CAST 和 CONVERT (Transact-SQL)
  2. 05用线程类Thread开启线程
  3. VTK:结构化网格之Vol
  4. 前端学习(3068):vue+element今日头条管理-上午总结
  5. mvc html传参数乱码,SpringMVC Controller 接收页面传递的中文参数出现乱码
  6. 您真的理解了SQLSERVER的日志链了吗?
  7. python栈应用_栈应用之 后缀表达式计算 (python 版)
  8. 第 8 章 建造者模式
  9. idea导入java项目步骤_idea导入javaweb项目
  10. gg修改器偏移量修改_GG修改器偏移是怎么弄 | 手游网游页游攻略大全
  11. GIS数据转换成CAD数据,还原显示CASS码、符号样式及高程值等图形属性的解决方案,shp转dwg,arcgis数据转CAD数据
  12. 【android免root脚本制作】自动坐标操作手机——京东金融程序金果摇钱树自动收金果
  13. vs code代码格式化配置
  14. 互联网公司的岗位构成
  15. 跟着团子学SAP CS:SAP CS(客户服务)模块概览
  16. RSTP Proposal-Agreement
  17. 学习达人榜:学无止尽,追梦无悔
  18. 计算机工程与应用出版时间,计算机工程与应用
  19. Xcode 真机调试失败:Errors were encountered while preparing your device for development
  20. Linux从入门到实战 ---- 磁盘分区

热门文章

  1. Redis之通用的key操作命令
  2. JPA中实现单向一对多的关联关系
  3. C#中计时器Stopwatch的使用
  4. CS中常用转义符与@符号的作用
  5. Python脚本打包成exe文件
  6. 学习ribbon,进来看看吧
  7. 高效组织的配置管理计划
  8. 从零开始小说 html,从零开始的HTML生活
  9. 神策 2020 数据驱动用户大会:新愿景 + 新定位 + 新舰队正式亮相!
  10. selenium+chromedriver监测视频流源地址时允许flash自动启用