Windows Azure Storage用戶端JAVA版概覽

來源:互聯網
上載者:User
關鍵字 Azure Azure JAVA版 Storage用戶端

我們發佈了支援Windows HTTP://www.aliyun.com/zixun/aggregation/13357.html">Azure Blob、Queue和Table的存儲用戶端JAVA版。 我們的目標是繼續提高在編寫使用Windows Azure Storage的雲計算應用程式時的開發體驗。 這次發佈的是微軟提供支援的社區技術預覽版(CTP)。 因此,我們結合了來自客戶和當前. NET類庫論壇的回饋,來説明我們創建更加無縫的既強大而又易用的應用程式介面(API)。 本篇文章提供了這個庫的概覽,並且包含了一些在開發JAVA雲計算應用程式時有助於理解的實現細節。 另外,我們提供另外兩篇文章,涉及Blob和Table服務的一些特性和程式設計模型。

存儲用戶端JAVA版以Windows Azure SDK JAVA版的jar包分發(位置查看下面)。 為了得到最好的開發體驗,可以直接導入用戶端的子包(com.microsoft.windowsazure.services. [blob|queue|table].client)。 本文討論用戶端這一層。

相關的包根據服務可以分為:

公共包

com.microsoft.windowsazure.services.core.storage – 這個包包含所有存儲的基本元素,比如存儲帳號(CloudStorageAccount), 存儲憑據(StorageCrendentials),重試策略,等等。

服務包

com.microsoft.windowsazure.services.blob.client – 這個包包含所有用於Windows Azure Blob服務的所有功能,比如Blob用戶端(CloudBlobClient), Blob(CloudBlob)等等。

com.microsoft.windowsazure.services.blob.client – 這個包包含所有用於Windows Azure Queue服務的所有功能,比如Queue用戶端(CloudQueueClient) ,Queue(CloudQueue)等等。

com.microsoft.windowsazure.services.table.client –這個包包含所有用於Windows Azure Table服務的所有功能, 比如Table用戶端(CloudTableClient),Queue(TableServiceEntity)等等。

服務

雖然本文描述上面這些包的基本概念,但還是值得簡要總結一下每個用戶端庫的能力。 Blob和Table分別有一些有意思的特性值得進一步討論。 為此,我們寫了另一些文章,下面有連結。 用戶端API介面設計成容易使用且容易理解,同時為了適應更加複雜的場景,在必要的地方我們提供了可選的擴充點。

Blob

Blob API介面支援所有的基本操作(上傳、下載、快照、設置/讀取中繼資料和列目錄),以及基本的Container操作(創建、刪除和列出Blob)。 但是我們更進一步,提供一些額外的便利功能,比如恢復下載、稀疏頁Blob支援、簡化的MD5場景以及簡化訪問條件。

為了更好地解釋Blob API的這些特性,我們發佈了另一篇詳細討論的文章。

示例 – 上傳檔至Block Blob

導入必要的包import com.microsoft.windowsazure.services.blob.client.CloudBlobClient;import com.microsoft.windowsazure.services.blob.client.CloudBlobContainer;import com.microsoft.windowsazure.services.blob.client.CloudBlockBlob;import com.microsoft.windowsazure.services.core.storage.CloudStorageAccount; 初始化帳號CloudStorageAccount account = CloudStorageAccount.parse([ACCOUNT_STRING]); 創建blob用戶端CloudBlobClient blobClient = account.createCloudBlobClient(); 獲取新創建Container的引用CloudBlobContainer container = blobClient.getContainerReference("mycontainer"); 用本地檔創建或者覆蓋名為myimage.jpg的blobCloudBlockBlob blob = container.getBlockBlobReference("myimage.jpg"); File source = new File("c:\\myimages\\myimage.jpg");blob.upload(new FileInputStream(source), source.length());

(注意:如果可以的話,最好總是提供上傳資料的長度。 如果長度未知的話,也可以指定為-1)

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.