2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > 图片上传到阿里云OSS存储

图片上传到阿里云OSS存储

时间:2023-03-07 01:18:42

相关推荐

图片上传到阿里云OSS存储

首先我们需要申请阿里云账号 进行购买OSS云存储

一、开通“对象存储OSS”服务

申请阿里云账号、实名认证、进入管理控制台

二、创建Bucket

根据自身需求 ,一般选择标准存储

详细步骤可查看官方文档

/document_detail/3.html?

三、搭建service-oss模块

1、引入oss所需pom

<dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.10.2</version></dependency>

2、获取用户acesskeys

找到我们购买产品的accessKey

3、控制层

@RestController@RequestMapping("/api/oss/file")public class FileApiController {@Autowiredprivate FileService fileService;//上传文件到阿里云oss@PostMapping("fileUpload")public Result fileUpload(MultipartFile file) {//获取上传文件String url = fileService.upload(file);return Result.ok(url);}}

4、业务层

@Servicepublic class FileServiceImpl implements FileService {@Overridepublic String upload(MultipartFile file) {// Endpoint以杭州为例,其它Region请按实际情况填写。String endpoint = “oss-cn-";String accessKeyId = “你自己的accessKeyId ";String accessKeySecret = “你自己的accessKeySecret ";String bucketName = “yygh-naika"; //你创建的bucket名称try {// 创建OSSClient实例。OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);// 上传文件流。InputStream inputStream = file.getInputStream();String fileName = file.getOriginalFilename();// 防止上传文件名重复 生成随机唯一值,使用uuid,添加到文件名称里面String uuid = UUID.randomUUID().toString().replaceAll("-",""); //uuid 将”-“替换成空fileName = uuid+fileName;//文件名//类似这样 41e4087ee004fa2fe4b17a83ef482de1d1dee.jpg//调用方法实现上传// 1.jpg /a/b/1.jpgossClient.putObject(bucketName, fileName, inputStream);// 关闭OSSClient。ossClient.shutdown();//上传之后文件路径// https://yygh-atguigu.oss-cn-/01.jpgString url = "https://"+bucketName+"."+endpoint+"/"+fileName;//返回 上传路径return url;} catch (IOException e) {e.printStackTrace();return null;}}}

public interface FileService {//上传文件到阿里云ossString upload(MultipartFile file);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。