阿里云图片存储_阿里云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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 提交缺陷报告

    提交缺陷报告一、软件缺陷的判定1.什么是缺陷软件存在着不符合质量需求或违背软件用户、客户、企业意愿的问题,这就是软件缺陷(Defect),又叫“Bug(臭虫)”。2.软件缺陷的判定准则软件未达到产品说明书标明的功能;产品说明书简称为说明(spec)或产品说明(productspec),是软件开发小组的一个协定。它对开发的产品进行定义,给出产品的细节、如何做、做什么、不能做什么。这种协定从简单的口头说明到正式的书面文档有多种形式。软件出现了产品说明书指明不会出现的错误;如金融软件

    2022年9月18日
    0
  • Hystrix原理与实战

    Hystrix原理与实战转:Hystrix原理与实战背景分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务。如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。并且这种不可用可能沿请求调用链向上传递,这种现象被称为雪崩效应。雪崩效应常见场景硬件故障:如服务器宕机,机房断电,光…

    2022年10月23日
    0
  • ARM版Oracle安装包_如何把Linux移植到手机

    ARM版Oracle安装包_如何把Linux移植到手机  linux作为一款流行的嵌入式系统,目前已经有多种架构的MCU支持Linux移植,arm64就是其中一种。今天在这里想做一个笔记,记录一下完整的arm64移植过程。嵌入式Linux系统组成部分嵌入式Linux移植到开发板上时,主要有四个组成部分,下面一一列举。  在启动过程中,bootloader加载设备树文件(dtb),之后启动内核(Startkernel),进而加载根文件系统(debian或者ubuntu),最后进入系统。  那么我们所做的工作可以分为以下三部分:1、进行bootlo

    2022年9月17日
    0
  • JVM之JVM运行时内存结构, JDK1.7 JVM内存结构, JDK1.8 JVM内存结构, JVM堆内存结构

    JVM之JVM运行时内存结构, JDK1.7 JVM内存结构, JDK1.8 JVM内存结构, JVM堆内存结构1.JVM内存图1.1JDK1.7JVM内存图程序计数器:线程私有的(每个线程都有一个自己的程序计数器),是一个指针.代码运行,执行命令.而每个命令都是有行号的,会使用程序计数器来记录命令执行到多少行了.Java虚拟机栈:线程私有的(每个线程都有一个自己的Java虚拟机栈).一个方法运行,就会给这个方法创建一个栈帧,栈帧入栈执行代码,执行完毕之后出栈(弹栈)本地方法栈:线程私有的(每个线程都有一个自己的本地方法栈),和Java虚拟机栈类似,Java虚拟机栈加载

    2022年5月29日
    33
  • 发现一个非常好的的VB学习网站。www.newxing.com[通俗易懂]

    发现一个非常好的的VB学习网站。www.newxing.com[通俗易懂]
    www.newxing.com 会经常上上看的。
     

    2022年6月21日
    67
  • java 遍历map集合_Java遍历Map对象的四种方式

    关于java中遍历map具体哪四种方式,请看下文详解吧。方式一:这是最常见的并且在大多数情况下也是最可取的遍历方式。在键值都需要时使用。Mapmap=newHashMap();for(Map.Entryentry:map.entrySet()){System.out.println(“Key=”+entry.getKey()+”,Value=”+entry.g…

    2022年4月7日
    38

发表回复

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

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