阿里云图片存储_阿里云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);
      }
    }
  }
}

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 关于Platform SDK和Windows SDK

    关于Platform SDK和Windows SDK原文地址:http://www.cnblogs.com/holynn/archive/2009/04/29/1446498.html问题1:什么是WindowsSDK?WindowsSDK是用来支持32位和64位Windows平台以及.NET框架编程模型的开发包。WindowsSDK这个名字从WindowsVista开始使用,它包含以前PlatformSDK中的所有内容,同时包含

    2022年5月4日
    44
  • 数字逻辑中的与或非异或的运算规律_执行逻辑与或非运算

    数字逻辑中的与或非异或的运算规律_执行逻辑与或非运算计算机中的逻辑运算又被称作为“布尔运算”,分别为:逻辑**与**运算、逻辑**或**运算,逻辑**非**运算,“逻辑**异或**运算。此外在门电路中还有:**同或**运算、**与非**运算、**或非**运算。共七种。……

    2022年10月12日
    2
  • STVD+COSMIC编译工程时can’t open file crtsi0.sm8

    STVD+COSMIC编译工程时can’t open file crtsi0.sm8#errorclnkDebug\demo.lkf:47can’topenfilecrtsi0.sm8#errorclnkDebug\demo.lkf:60can’topenfilelibis0.sm8#errorclnkDebug\demo.lkf:61can’topenfilelibm0.sm8

    2022年9月16日
    5
  • pycharm中文版怎么配置python环境_python怎么加编译器

    pycharm中文版怎么配置python环境_python怎么加编译器python环境配置:1.系统自带的python.exe或者自己下载的2.下载anaconda自带的python.exepycharm中如何使用环境:选择File->setting->PythonInterpreter->点右边的设置标志Add->然后可以选择虚拟环境,这个是选择系统自带的python.exe或者选择Conda环境,有新建环境和已存在的环境,点新建环境可以直接处男建一个conda环境,python版本也可以指定,自动下载。已存在的环境的话就是

    2022年8月27日
    4
  • MATLAB 柱状图(Bar) 如何快速更改堆叠图的颜色

    MATLAB 柱状图(Bar) 如何快速更改堆叠图的颜色直接上成图:代码很简单:clearclccloseallX=[8,1,9,3,6,9,3,5,43,2,9,2,6,4,9,5,1];X=X’;color_matrix=[1,1,10.5,0.5,0.5];%%用矩阵存储RGB三色数据,也可以直接赋值h1=bar(X(:,1:2),1);set(h1(1),’facecolor’,color_matrix(1,:))set(h1(2)

    2022年10月18日
    0
  • Python 字母大小写的转换

    Python 字母大小写的转换1name="AdaLovelace"2print(name.upper())3print(name.lower())

    2022年7月6日
    22

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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