阿里云OSS开通搭建(傻瓜式)案例课程管理快速入门

网友投稿 864 2022-10-22

阿里云OSS开通搭建(傻瓜式)案例课程管理快速入门

阿里云OSS开通搭建(傻瓜式)案例课程管理快速入门

目录

​​1.开通OSS服务​​

​​2.搭建OSS环境​​

​​2.1创建Bucket存储空间​​

​​ 2.2创建文件夹上传图片​​

​​ 2.3RAM访问控制​​

​​2.快速入门 ​​

​​2.1-SDK​​

​​2.2创建存储空间​​

​​2.3上传图片​​

​​3.课程管理​​

​​3.1需求​​

​​ 3.2前端实现​​

​​2.4后端测试数据​​

​​2.5后端实现​​

​​2.5.1配置类​​

​​ 2.5.2上传工具类​​

​​2.5.3上传功能​​

1.开通OSS服务

2.搭建OSS环境

2.1创建Bucket存储空间

选择 Bucket列表,进行Bucket创建

选择:标准存储、关闭冗余、不开通版本控制、公共读、无加密、不开通日志、不开通备份

2.2创建文件夹上传图片

创建文件夹

上传图片

2.3RAM访问控制

安全提醒,使用​​子用户​​

创建用户组:

添加用户

添加用户到用户组

设置权限

获取子用户AccessKeyId,AccessKeySecret

2.快速入门

2.1-SDK

添加坐标

com.aliyun.oss aliyun-sdk-oss 3.10.2

2.2创建存储空间

// Endpoint以杭州为例,其它Region请按实际情况填写。String endpoint = "阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录RAM控制台创建RAM账号。String accessKeyId = "";String accessKeySecret = "";String bucketName = "";// 创建OSSClient实例。OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);// 创建存储空间。ossClient.createBucket(bucketName);// 关闭OSSClient。ossClient.shutdown();

例如:

package com.czxy;import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import org.junit.Test;public class TestOss { @Test public void testCreateBucket() { // Endpoint以杭州为例,其它Region请按实际情况填写。 String endpoint = "oss-cn-shanghai.aliyuncs.com"; // 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录RAM控制台创建RAM账号。 String accessKeyId = "LTAI5t7oNGMkQJ1X8RqtLet2"; String accessKeySecret = "这里是密码"; String bucketName = "czxy-lt-01"; // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); // 创建存储空间。 ossClient.createBucket(bucketName); // 关闭OSSClient。 ossClient.shutdown(); }}

2.3上传图片

参考代码位置:

例如:

@Test public void testUpload() throws FileNotFoundException { // yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1(杭州)为例,Endpoint填写为 String endpoint = "oss-cn-shanghai.aliyuncs.com"; // 阿里云账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维,请登录RAM控制台创建RAM用户。 String accessKeyId = "LTAI5t7oNGMkQJ1X8RqtLet2"; String accessKeySecret = "这是密码"; // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret); String path = "avatar/" + System.currentTimeMillis() + ".png"; // 数据流 InputStream inputStream = new FileInputStream("C:/Users/Administrator/Desktop/1/cz.png"); // 填写Bucket名称和Object完整路径。Object完整路径中不能包含Bucket名称。 ossClient.putObject("czxy-lt", path, inputStream); // 关闭OSSClient。 ossClient.shutdown(); // String url = "+ path; System.out.println(url); }

3.课程管理

3.1需求

3.2前端实现

添加上传组件和头像组件

编写上传路径

data() { return { updateUrl: process.env.VUE_APP_BASE_API + '/course-service/course/avatar/upload', //上传路径 }}

编写处理函数:上传成功后,显示头像

handleExceed(files, fileList) { //默认 this.$message.warning(`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`); }, avatarUploadSuccess(response) { // 设置头像 this.course.cover = response.data }

2.4后端测试数据

@PostMapping("/avatar/upload") public BaseResult avatarUpload(MultipartFile file) { String url = " return BaseResult.ok("上传成功", url); }

2.5后端实现

2.5.1配置类

yml 配置

aliyun: oss: file: endpoint: oss-cn-shanghai.aliyuncs.com keyId: LTAI5t7oNGMkQJ1X8RqtLet2 keySecret: 这里是密码 dirName: avatar bucketName: czxy-lt

配置类

package com.czxy.zx.course.oss;import lombok.Data;import org.springframework.boot.context.properties.ConfigurationProperties;import org.springframework.stereotype.Component;@Data@Component@ConfigurationProperties(prefix = "aliyun.oss.file")public class OssProperties { private String endpoint; private String keyId; private String keySecret; private String dirName; private String bucketName;}

2.5.2上传工具类

package com.czxy.zx.course.oss;import com.aliyun.oss.OSS;import com.aliyun.oss.OSSClientBuilder;import com.czxy.zx.exception.EduException;import org.springframework.stereotype.Component;import org.springframework.web.multipart.MultipartFile;import javax.annotation.Resource;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;@Componentpublic class OssUtils { @Resource private OssProperties ossProperties; public String upload(MultipartFile file) { if(file == null) { throw new EduException("上传文件为空"); } try { // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(ossProperties.getEndpoint(), ossProperties.getKeyId(), ossProperties.getKeySecret()); String path = ossProperties.getDirName() + "/" + System.currentTimeMillis() + ".png"; // 数据流 InputStream inputStream = file.getInputStream(); // 填写Bucket名称和Object完整路径。Object完整路径中不能包含Bucket名称。 ossClient.putObject(ossProperties.getBucketName(), path, inputStream); // 关闭OSSClient。 ossClient.shutdown(); String url = "+ path; return url; } catch (IOException e) { throw new EduException("文件上传有误"); } }}

2.5.3上传功能

注入工具

调用工具

@PostMapping("/avatar/upload") public BaseResult avatarUpload(MultipartFile file) { String url = ossUtils.upload(file); return BaseResult.ok("上传成功", url); }

我们的阿里云OSS就结束了 欢迎大家添加博主交流 练习过程中遇到问题也可以提供支持 如果需要学习资料 博主也可以推荐

最后 如果觉得文章对您有帮助 请给博主点赞、收藏、关注 博主会不断推出更多优质文章

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:在GitHub中启用代码折叠的Chrome扩展程序
下一篇:使用MVVM模式实现的Android天气应用程序
相关文章

 发表评论

暂时没有评论,来抢沙发吧~