【科普】OSS存储的基本操作
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存储的基本操作相关推荐
- 从AWS S3换成阿里云OSS存储所踩的坑
因业务需要,AWS S3 不能使用了,要换成阿里云OSS存储和下载.简单作以记录,以作备忘. 1.参照https://help.aliyun.com/product/31815.html?spm=51 ...
- oss客户端工具_阿里云服务器ECS上使用ossfs工具挂载阿里云OSS存储
介绍:阿里云对象存储服务(Object Storage Service,简称OSS)可以提供基于网络的数据存取服务.使用OSS,可以通过网络随时存储和调用包括文本.图片.音频和视频等在内的各种非结构化 ...
- mysql数据库备份到oss_备份MySQL数据库并上传到阿里云OSS存储
1. 环境配置 要将本地文件上传到阿里云oss中, 必须使用阿里云提供的工具 ossutil, 有32位,也有64位的, Linux和Windows都有.具体可以到阿里云官网下载 本文以Linux系统 ...
- 二叉树的三叉链表存储和基本操作
三叉链表存储表示 改进于二叉链表,增加指向父节点的指针,能更好地实现结点间的访问. 存储结构 /* 二叉树的三叉链表存储表示 */typedef struct BiTPNode{TElemType d ...
- django图片上传到oss_django 配置阿里云OSS存储media文件的例子
1. 安装django-aliyun-oss2-storage包 linux上用 pip install django-aliyun-oss2-storage 无报错,顺利安装 windows上报错: ...
- 前端(react)上传到阿里云OSS存储 实例
需求背景 由于现有的后台管理系统,上传的视频越来越大,加上上传视频较慢,后端小哥提出直接从前端上传视频或者其他文件到阿里云OSS存储. 阿里云OSS 阿里云OSS文档介绍,这里不做过多赘述 安装 原本 ...
- C#阿里云OSS——存储
文章目录 阿里云OSS是什么? 使用步骤 开通OSS和创建AccessKey 项目应用 安装Aliyun.OSS.SDK.NetCore包 编写OSS帮助类,封装SDK提供的方法 AliyunOSSH ...
- 【阿里云】ECS 使用 Ossfs 挂载 OSS 存储
ECS 和 OSS 都是阿里云旗下的产品,ECS 是云服务器,OSS是对象存储,用于存储数据,个人感觉类似于数据库.而通过Ossfs就可以将ECS和OSS连接起来,将OSS的一个bucket挂载在EC ...
- 【ReactJs+springBoot项目——租房】第3章:OSS存储图片+本地存储+ 房源列表查询+GraphQL入门
图片存储解决方案的分析 阿里云OSS存储方案的实现 本地存储方案的实现 整合前端系统实现图片上传功能 实 现 房 源 列 表 查 询 功 能 GraphQL的入门 1.图片存储解决方案 在新增房源中, ...
最新文章
- sql server 2005 T-SQL CAST 和 CONVERT (Transact-SQL)
- 05用线程类Thread开启线程
- VTK:结构化网格之Vol
- 前端学习(3068):vue+element今日头条管理-上午总结
- mvc html传参数乱码,SpringMVC Controller 接收页面传递的中文参数出现乱码
- 您真的理解了SQLSERVER的日志链了吗?
- python栈应用_栈应用之 后缀表达式计算 (python 版)
- 第 8 章 建造者模式
- idea导入java项目步骤_idea导入javaweb项目
- gg修改器偏移量修改_GG修改器偏移是怎么弄 | 手游网游页游攻略大全
- GIS数据转换成CAD数据,还原显示CASS码、符号样式及高程值等图形属性的解决方案,shp转dwg,arcgis数据转CAD数据
- 【android免root脚本制作】自动坐标操作手机——京东金融程序金果摇钱树自动收金果
- vs code代码格式化配置
- 互联网公司的岗位构成
- 跟着团子学SAP CS:SAP CS(客户服务)模块概览
- RSTP Proposal-Agreement
- 学习达人榜:学无止尽,追梦无悔
- 计算机工程与应用出版时间,计算机工程与应用
- Xcode 真机调试失败:Errors were encountered while preparing your device for development
- Linux从入门到实战 ---- 磁盘分区