哪家公司做网站比较好,阿里巴巴国际贸易网站,广告设计公司招聘,怎么自己做网站吗目录
一、OSS简介
二、OSS基本使用
1. 注册账号
2. 基本配置
(1) 开通OSS
(2) 创建存储空间
(3) 修改权限
(4) 配置完成#xff0c;上传一张图片#xff0c;检验是否成功。
(5) 创建AccessKey
三、Java项目集成OSS
1. 导入依赖
2. Result.java代码#xff1a; …目录
一、OSS简介
二、OSS基本使用
1. 注册账号
2. 基本配置
(1) 开通OSS
(2) 创建存储空间
(3) 修改权限
(4) 配置完成上传一张图片检验是否成功。
(5) 创建AccessKey
三、Java项目集成OSS
1. 导入依赖
2. Result.java代码
3. 引入OSS上传文件工具类 AliOSSUtils.java
3. UploadController
4. 使用postman对接口进行测试 一、OSS简介
阿里云的对象存储服务Object Storage Service简称OSS提供了一个网络平台用于数据的存储和访问。通过OSS我们能够随时在网络上存储和检索包括文本、图像、音频和视频在内的多种非结构化数据文件。在OSS中数据文件被作为对象存储于称作存储空间bucket的容器中。
以下是OSS支持的主要功能 创建存储空间用户可以创建一个或多个存储空间并在每个存储空间中上传文件。 文件上传与管理用户能够将文件上传至指定的存储空间并进行相应的管理操作。 文件共享与下载用户可以通过获取已上传文件的URL地址来实现文件的共享和下载。 设置访问权限用户可以调整存储空间或文件的属性和元数据以设定相应的访问权限。 管理控制台操作用户可以在阿里云的管理控制台中执行OSS的基本和高级任务。 API调用用户可以利用阿里云的开发工具包或直接通过RESTful API在应用程序中执行OSS的基本和高级操作。
二、OSS基本使用
1. 注册账号
打开 阿里云-计算为了无法计算的价值申请阿里云账号并完成实名认证
2. 基本配置
(1) 开通OSS
登录成功之后点击右上角“控制台” 鼠标放在左上角三条横杠处点击“对象存储”打开OSS产品详情页面。在OSS产品详情页中的单击立即开通。 开通服务后单击官网首页右上方菜单栏的控制台进入阿里云管理控制台首页然后单击左侧的对象存储OSS菜单进入 OSS管理控制台。
(2) 创建存储空间
新建Bucket自定义名称地域随便选读写权限默认私有创建完成后改为公共读。 按照图中选其他默认就行都是不开通或者关闭。 (3) 修改权限
完成创建之后进入创建好的Bucket点击左侧列表“权限控制”—“阻止公共访问”关闭“阻止公共访问”接下来按步骤走。 接下来点击“读写权限”—“设置”选择“公共读”按步骤走即可。 (4) 配置完成上传一张图片检验是否成功。
“文件列表”—“上传文件”—“扫描文件” —选择一个文件 —“上传文件” 点击“详情”进行下载 下载成功则说明访问成功
(5) 创建AccessKey
鼠标移动到头像处点击“AccessKey”。 点击“我确认...”—“继续使用”—“创建AccessKey” 继续使用即可。 创建完成就获得了AccessKey 三、Java项目集成OSS
参考官方文档OSS Java SDK快速入门_对象存储(OSS)-阿里云帮助中心
1. 导入依赖
在Maven工程中使用OSS Java SDK只需在pom.xml中加入相应依赖即可。以在dependencies中加入3.17.4版本的依赖为例
dependencygroupIdcom.aliyun.oss/groupIdartifactIdaliyun-sdk-oss/artifactIdversion3.17.4/version
/dependency
如果使用的是Java 9及以上的版本则需要添加以下JAXB相关依赖
dependencygroupIdjavax.xml.bind/groupIdartifactIdjaxb-api/artifactIdversion2.3.1/version
/dependency
dependencygroupIdjavax.activation/groupIdartifactIdactivation/artifactIdversion1.1.1/version
/dependency
!-- no more than 2.3.3--
dependencygroupIdorg.glassfish.jaxb/groupIdartifactIdjaxb-runtime/artifactIdversion2.3.3/version
/dependency
2. Result.java代码
package com.qcby.model;public class ResultT {private int code;private String message;private T data;private Result(int code, String message, T data) {this.code code;this.message message;this.data data;}public static T ResultT success(T data) {return new Result(200, 操作成功, data);}public static T ResultT failure(int code, String message) {return new Result(code, message, null);}// Getters and Setterspublic int getCode() {return code;}public void setCode(int code) {this.code code;}public String getMessage() {return message;}public void setMessage(String message) {this.message message;}public T getData() {return data;}public void setData(T data) {this.data data;}
}
3. 引入OSS上传文件工具类 AliOSSUtils.java
package com.qcby.utils;import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
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;
import java.util.UUID;Component
public class AliOSSUtils {private String endpoint 自己的;private String accessKeyId 自己的;private String accessKeySecret 自己的;private String bucketName 自己的;/*** 实现上传图片到OSS*/public String upload(MultipartFile multipartFile) throws IOException {// 获取上传的文件的输入流InputStream inputStream multipartFile.getInputStream();// 避免文件覆盖String originalFilename multipartFile.getOriginalFilename();String fileName UUID.randomUUID().toString() originalFilename.substring(originalFilename.lastIndexOf(.));//上传文件到 OSSOSS ossClient new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);ossClient.putObject(bucketName, fileName, inputStream);//文件访问路径String url endpoint.split(//)[0] // bucketName . endpoint.split(//)[1] / fileName;// 关闭ossClientossClient.shutdown();return url;// 把上传到oss的路径返回}
}3. UploadController
package com.qcby.controller;import com.qcby.model.Result;
import com.qcby.utils.AliOSSUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;Controller
public class UploadController {Autowiredprivate AliOSSUtils aliOSSUtils;ResponseBodyRequestMapping(/upload)public Result upload(MultipartFile image) throws IOException {//调用阿里云OSS工具类将上传上来的文件存入阿里云String url aliOSSUtils.upload(image);//将图片上传完成后的url返回用于浏览器回显展示return Result.success(url);}
}4. 使用postman对接口进行测试
切换到 “Body”正文选项卡。选择 “form-data” 作为正文类型。在 “VALUE” 列中使用选择文件按钮上传你想要测试的文件。