阿里云图片存储_阿里云oss价格

阿里云图片存储_阿里云oss价格oss目的:1.图片和音视频等应用的海量存储2.网页或者移动应用的静态和动态资源分离利用BGP带宽,OSS可以实现超低延时的数据直接下载。也可以配合阿里云CDN加速服务3.云端数据处理比如图片的裁剪,缩放,鉴黄等oss使用:1.http://www.aliyun.com/product/登录阿里云,开通oss图片存储(如果你还没有账号需要先注册获取AccessKey…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

oss目的:

1.图片和音视频等应用的海量存储

2.网页或者移动应用的静态和动态资源分离

 利用BGP带宽,OSS可以实现超低延时的数据直接下载。也可以配合阿里云CDN加速服务

3.云端数据处理

比如图片的裁剪,缩放,鉴黄等

oss使用:

1.http://www.aliyun.com/product/登录阿里云,开通oss图片存储(如果你还没有账号需要先注册获取Access Key ID和Access Key Secret)

2.新建bucket(注意命名空间,最好设置公共读写),我这边是以(杭州节点为例)

3.应用到项目中(http://docs.aliyun.com/#/pub/oss/sdk/java-sdk&preface)下载sdk(导入步骤省略)

4.参照demo写的简单的上传和下载到oss的代码

上传图片:

public void uploadFileToOss(String key, String filename){
  File file = new File(filename);
  ObjectMetadata objectMeta = new ObjectMetadata();
  objectMeta.setContentLength(file.length());
  objectMeta.setContentType("image/jpeg");
  InputStream input;
  try {
        input = new FileInputStream(file);
        OSSClient client = initParam.getOssClient();
        client.putObject(initParam.getBucketName(), key, input, objectMeta);
  } catch (FileNotFoundException e) {
   logger.error("找不到文件:"+filename);
   e.printStackTrace();
  }catch(OSSException oe){
   logger.error("OSSException");
   oe.printStackTrace();
  }catch(ClientException ce){
   logger.error("ClientException");
   ce.printStackTrace();
  }
}

Jetbrains全家桶1年46,售后保障稳定

 

下载:

public void downFileFromOss(String key, String filename,
   HttpServletRequest request,HttpServletResponse response){
   OutputStream outStream=null;
   try{
       outStream=response.getOutputStream();
       ServletUtils.setFileDownloadHeader(request, response, filename);
       OSSClient client = initParam.getOssClient();
       GetObjectRequest getObjectRequest = new GetObjectRequest(initParam.getBucketName(), key);
       OSSObject ossObject = client.getObject(getObjectRequest);
       byte[] buffer = new byte[1024];
       int bytesRead=0;
       outStream = response.getOutputStream();
       while ((bytesRead = ossObject.getObjectContent().read(buffer)) > -1) {
         outStream.write(buffer, 0, bytesRead);
       }
        outStream.flush();
      } catch (UnsupportedEncodingException e) {
       logger.error("下载文件失败",e);
      } catch (IOException e) {
       logger.error("下载文件失败",e);
      }finally{
       if(outStream != null){
      try {
         outStream.close();
      } catch (IOException e) {
         logger.error("关闭输入流失败",e);
      }
    }
  }
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/219287.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 基尼系数简单算法举例说明_趣学python算法100例

    基尼系数简单算法举例说明_趣学python算法100例1912年意大利经济学家基尼,设计了一个测度社会贫富差距的方法沿用至今,成为国际通用的标准。文章中通过python,公式法以及面积法计算2008年美国收入情况的基尼系数。并补充列表推导式相关介绍使用。

    2022年10月13日
  • Python读取excel并生成xml_python修改xml

    Python读取excel并生成xml_python修改xml在使用pandas批量处理Excel文件时,抛出XLRDError错误:XLRDError:Unsupportedformat,orcorruptfile:ExpectedBOFrecord;found’

  • 如何配置一台计算机预计3500元,玩游戏用的电脑主机应该怎么配置?3500元组装游戏电脑主机配置推荐…「建议收藏」

    如何配置一台计算机预计3500元,玩游戏用的电脑主机应该怎么配置?3500元组装游戏电脑主机配置推荐…「建议收藏」本文转自:http://www.dn010.com/peizhi/950.html玩游戏用的电脑主机应该怎么配置?喜欢玩游戏的朋友都想配置一台游戏电脑,今天电脑组装知识网给大家带来3500元组装游戏电脑主机配置推荐,主机的价位在3500元,很符合主流游戏用户的价格区间,高特效LOL,cf,中特效吃鸡、大型单机都可以应对。1、虽然intel已经推出了第九代处理器,不过目前为止,九代产品线只覆盖了中高…

  • spring cloud面试题_javaspring面试题

    spring cloud面试题_javaspring面试题Tags:JavaEE,Spring,面试题发表时间:2014-11-2915:03:53原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。比如:转自:Su的技术博客 原文地址:https://blog.verysu.com/article/119 这些Spring面试题是从尚硅谷http://www.atguigu.c…

    2022年10月14日
  • linux中如何备份和恢复磁盘分区表

    linux中如何备份和恢复磁盘分区表如何备份和恢复分区表0磁道的0扇区512字节包含主引导程序占446字节主分区表占64字节和结束位(2字节)如果0扇区损坏或者破坏能造成很严重的后果,我们备份一下0扇区。备份扇区[root@centos7~]#ddif=/dev/sdaof=/app/mbrbs=1count=512512+0recordsin512+0recor

  • 能向入口函数传入多个参数的 QueueUserWorkItem

    能向入口函数传入多个参数的 QueueUserWorkItem不啰嗦了,花一周时间也没赶上std::async和std::thread的设计,标准库的设计真的,很优秀。我记下这段时间里做了什么;这里包含了把函数拆成两步调用的方法,第一步传参,第二步执行;SplitInvoke;如果我能把第一步放到A线程,第二步放到B线程,就能解决std::thread潜在的两次拷贝和对象(Windows的窗口对象等)绑定到线程问题,就能制造一个优于std::…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号