- 【版權所有,文章允許轉載,但須以鏈接方式註明源地址,否則追究法律責任】
- 【創作不易,點個贊就是對我最大的支持】
最近研究了一下阿里雲OSS對象存儲器,話不多說,上步驟:
首先,得買一個OSS對象存儲器(前提買完以後)
2.進入控制檯,點擊創建bucket
3.之後根據你的需求選擇圖片服務器倉庫類型
名稱就是你倉庫名稱
- 標準存儲就是存儲類型多一點
- 低頻存儲適合長期存儲
- 歸檔數據適合影像資料
建議標準存儲
4.再往下就看你需求了
- 版本控制
- 讀寫權限
- 服務端加密
- 日誌查詢
5.選好以後點擊確定,之後左邊就會顯示你的倉庫
6.點擊你倉庫,點擊彈出來的概覽
7.接下來說的,都要複製到記事本上方便一會複製
箭頭指的這兩個域名和節點複製下來,並記錄好,待會要用
8.左上邊邊點擊概覽,然後在點擊右邊得AccessKey
9.進來以後點擊繼續使用
10.點擊顯示
箭頭指的這兩個ID複製下來,並記錄好,待會要用
11.像這樣記錄起來
12.我們在IDEA測試一下
通過阿里雲上傳文件幫助文檔可以看看他寫的Demo
13.我簡單寫一個測試類
<1> 首先導入阿里雲OSS依賴
<!-- https://mvnrepository.com/artifact/com.aliyun.oss/aliyun-sdk-oss -->
<dependency>
<groupId>com.aliyun.oss</groupId>
<artifactId>aliyun-sdk-oss</artifactId>
<version>3.6.0</version>
</dependency>
<2> 測試類
一共4步,都在註釋裏1234跟着走就好
備註:我這邊上傳一個txt,如果上傳圖片需要轉2進制
package com.example.demo;
import com.aliyun.oss.OSS;
import com.aliyun.oss.OSSClientBuilder;
import com.aliyun.oss.model.PutObjectRequest;
import java.io.ByteArrayInputStream;
/**
* @Author: 蘇聞君
* @Date: Created in 2020/7/1 17:22
*/
public class OssTest {
public static void main(String[] args) {
// 1.Endpoint域名節點,前邊我們複製過得加到後邊
String endpoint = "http://";
// 阿里雲主賬號AccessKey擁有所有API的訪問權限,風險很高。強烈建議您創建並使用RAM賬號進行API訪問或日常運維,請登錄 https://ram.console.aliyun.com 創建RAM賬號。
//2.accessKeyId ,前邊我們複製過得加到後邊
String accessKeyId = "";
//3.AcessKey Secret,前邊我們複製過得加到後邊
String accessKeySecret = "";
// 創建OSSClient實例。
OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
// 創建PutObjectRequest對象。(content我理解的就是轉換過的2進制文件,如果你要上傳圖片,他會寫成2進制之後通過下邊的倉庫名稱後邊的key傳到你的倉庫)
String content = "Hello OSS";
// <yourObjectName>表示上傳文件到OSS時需要指定包含文件後綴在內的完整路徑,例如abc/efg/123.jpg。
//4.就是你創建時的bucket的名稱,後邊的參數就是要上傳的文件
PutObjectRequest putObjectRequest = new PutObjectRequest("倉庫名稱", "templates/d0927ff1gy1fn9bpa8ofzj20hf0p00ub.txt", new ByteArrayInputStream(content.getBytes()));
// 如果需要上傳時設置存儲類型與訪問權限,請參考以下示例代碼。
// ObjectMetadata metadata = new ObjectMetadata();
// metadata.setHeader(OSSHeaders.OSS_STORAGE_CLASS, StorageClass.Standard.toString());
// metadata.setObjectAcl(CannedAccessControlList.Private);
// putObjectRequest.setMetadata(metadata);
// 上傳字符串。
ossClient.putObject(putObjectRequest);
// 關閉OSSClient。
ossClient.shutdown();
}
}
備註:(代碼中content我理解的就是轉換過的2進制文件,如果你要上傳圖片,他會寫成2進制之後通過下邊的倉庫名稱後邊的key傳到你的倉庫)
<3> 我們運行一下看效果,上傳成功!
4.打開詳情,把設置讀寫權限修改爲公共讀
5.複製URL打開,打開後你就會發現代碼中content的值被寫進去了