SpringBoot整合阿里云OSS对象存储和文件上传的过程怎样的

  介绍

今天就跟大家聊聊有关SpringBoot整合阿里云OSS对象存储和文件上传的过程怎样的,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

1。准备工作:

一,首先登录阿里云OSS对象存储控制台创建一个桶作为你的存储空间。
二,创建访问柯桥柯岩按要求创建进行,这里的方法步骤我就不展现出来了,你们可以自行查询阿里云文档,这个获取值本身就不难。
重点:记下你的<强> AccessKey ID ,<强> AccessKey秘密以及你刚才创建的Buacket名字<强> BucketName .

2。配置:

在pom里引入oss要用的依赖

 & lt; dependency> & lt; groupId> com.aliyun.oss & lt; artifactId> aliyun-sdk-oss & lt; version> 3.10.2 & lt;/dependency> 

在application.yml里面添加配置文件

 #,定义的端口号服务器:
  ,,端口:8080年阿里巴巴:
  oss才能:# yourEndpoint填写斗所在地域对应的端点,可在创建好的桶概况页查看.endpoint:, oss-cn-chengdu.aliyuncs.com,以成都为例,端点填写为https://oss-cn-chengdu.aliyuncs.com阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建内存用户accessKeyId:, * * * * * * * * * * #,阿里云账号AccessKey里所对应的AccessKey  IDaccessKeySecret:, * * * * * * * * * * #,阿里云账号AccessKey里所对应的AccessKey  SecretbucketName:, * * * * * * * * * * #, oss对象存储空间名

3。详细代码:

第一步:创建一个服务包,新建一个AliyunOssService.java

 import  org.springframework.stereotype.Service; import  org.springframework.web.multipart.MultipartFile; import  java.util.Map; @Servicepublic  interface  AliyunOssService  {Map<字符串,Object>,上传(MultipartFile 文件,String 文件名);
  }

第二步:在服务包里创建一个impl包,新建一个AliyunOssServiceImpl.java

 import  com.system.demo.service.AliyunOssService; import  com.system.demo.util.FileUploadUtil; import  org.springframework.stereotype.Service; import  org.springframework.web.multipart.MultipartFile; import  javax.annotation.Resource; import  java.util.HashMap; import  java.util.Map;//java项目www.fhadmin.org@Service (“aliyunOssService") public  class  AliyunOssServiceImpl  implements  AliyunOssService  {@Resourceprivate  FileUploadUtil  fileUploadUtil; @Overridepublic  Map<字符串,Object>,上传(MultipartFile 文件,String 文件名){//定义一个目录(这里的目录可根据自己实际情况自己拼接定义)String  path =,“a";,,,//我这里就随便定义一个一个文件夹//拼接,这里将路径和文件名拼接在了一起fileName =, path  +,“/? +文件名;
  ,,,,,,,Map<字符串,Object>, map =new  HashMap<在();
  ,,,,,,,map.put (“code",, 200);
  ,,,,,,,map.put (“msg",,“查询成功“);
  ,,,,,,,map.put (“data",, this.fileUploadUtil.upload(文件,文件名));return 地图;
  ,,,}
  
  }

第三步:创建一个util包,新建一个FileUploadUtil.java

 import  com.aliyun.oss.OSS; import  com.aliyun.oss.OSSClientBuilder; import  com.aliyun.oss.model.ObjectMetadata; import  org.springframework.beans.factory.annotation.Value; import  org.springframework.stereotype.Component; import  org.springframework.web.multipart.MultipartFile; import  java.io.IOException; import  java.io.InputStream;//java项目www.fhadmin.org@Componentpublic  class  FileUploadUtil  {@ value (“$ {aliyun.oss.endpoint}“) private  String 端点;@ value (“$ {aliyun.oss.accessKeyId}“) private  String  accessKeyId; @ value (“$ {aliyun.oss.accessKeySecret}“) private  String  accessKeySecret; @ value (“$ {aliyun.oss.bucketName}“) private  String  bucketName; public  String 上传(MultipartFile 文件,String 文件名){//,写入文件try {//获取上传的输入流InputStream  InputStream =, file.getInputStream();//设置访问地址是默认是预览图片ObjectMetadata  meta =, new  ObjectMetadata ();
  ,,,,,,,,,,,,,,,meta.setContentType(“图像/jpg");//,创建OSSClient实例OSS  ossClient =, new  OSSClientBuilder () .build(端点,accessKeyId,, accessKeySecret);/*
  ,,,,,,,,,,,,,,,调用oss上传到阿里云对象存储oss——桶存储空间
  ,,,,,,,,,,,,,,,第一个参数,桶名称
  ,,,,,,,,,,,,,,,第二个参数,文件名称
  ,,,,,,,,,,,,,,,第三个参数,输入流
  ,,,,,,,,,,,,,,,第四个参数,文件类型
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null
  null

SpringBoot整合阿里云OSS对象存储和文件上传的过程怎样的