1. 程式人生 > >Azure系列2.1.9 —— CloudBlob

Azure系列2.1.9 —— CloudBlob

eth getc 不能 刪除 time obs sts string 獲得

(小弟自學Azure,文中有不正確之處,請路過各位大神指正。)

網上azure的資料較少,尤其是API,全是英文的,中文資料更是少之又少。這次由於公司項目需要使用Azure,所以對Azure的一些學習心得做下筆記,文中不正確地方請大家指正。

Azure Blob 存儲是用於存儲大量非結構化對象數據(例如文本或二進制數據)的服務,這些數據可通過 HTTP 或 HTTPS 從世界各地進行訪問。 可以使用 Blob 存儲向外公開數據,或者私下存儲應用程序數據。

Blob 存儲的常見用途包括:

  • 直接向瀏覽器提供圖像或文檔
  • 存儲文件以供分布式訪問
  • 對視頻和音頻進行流式處理
  • 存儲數據以用於備份和還原、災難恢復及存檔
  • 存儲數據以供本地或 Azure 托管服務執行分析

Package

com.microsoft.azure.storage.blob

Mean

表示Microsoft Azure blob。這是CloudBlockBlobCloudPageBlob類的基類。

Inherited

java.lang.Object ————> ListBlobItem ————> CloudBlob

Constructors

1、CloudBlob(final BlobType type, final StorageUri uri, final String snapshotID, final StorageCredentials credentials)

使用指定的URI、快照ID和雲blob客戶端創建類的實例

2、protected CloudBlob(final BlobType type, String blobName, String snapshotID, CloudBlobContainer container)

使用指定的類型、名稱、快照ID和容器創建類的實例。

3、protected CloudBlob(final CloudBlob otherBlob)

通過從另一個blob中復制值來創建類的實例。

Fields

1、blobServiceClientblob的客戶端

2、parentblob的目錄

3、streamMinimumReadSizeInBytes:使用BlobInputStream時保持最小讀取大小。

4、streamWriteSizeInBytes:保存寫入BlobOutputStream(塊和頁面blobs)時要緩沖的字節數。

Method

    1.public final void abortCopy(final String copyId)

    2.public final void abortCopy(final String copyId, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

中止正在進行的blob復制操作。

    3.public final String acquireLease()

獲得對blob的一個新的無限租賃,返回blobid

    4.public final String acquireLease(final Integer leaseTimeInSeconds, final String proposedLeaseId)

獲取具有指定租賃時間和建議的租賃IDblob的新租賃。

leaseTimeInSeconds:以秒為單位指定獲取租約所需的時間跨度。如果為空,將獲得一個無限的租約。如果不為空,則該值必須大於零

proposedLeaseId:表示新租賃的擬議租賃ID的字符串,如果沒有擬議的租賃ID,則為null

    5.public final String acquireLease(final Integer leaseTimeInSeconds, final String proposedLeaseId, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

獲取具有指定租用時間、建議的租用ID、請求選項和操作上下文的blob的新租約。

leaseTimeInSeconds:以秒為單位指定獲取租約所需的時間跨度。如果為空,將獲得一個無限的租約。如果不為空,則該值必須大於零

proposedLeaseId:表示新租賃的擬議租賃ID的字符串,如果沒有擬議的租賃ID,則為null

accessCondition表示blob的訪問條件

options為請求指定任何附加選項

opContext:表示當前操作的上下文的OperationContext對象。上下文用於跟蹤對存儲服務的請求,並提供關於操作的附加運行時信息。

    6.public final long breakLease(final Integer breakPeriodInSeconds)

終止租約,並確保另一個客戶在當前租約期滿之前不能獲得新的租約。返回以秒為單位的剩余時間。

breakPeriodInSeconds:指定等待的時間(以秒為單位),直到當前租約被破壞。如果為空,則中斷周期為當前租約的剩余時間,或者為無限租約的零。

    7.public final long breakLease(final Integer breakPeriodInSeconds, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

使用指定的請求選項和操作上下文終止現有租約,並確保另一個客戶端在當前租約期滿之前不能獲得新的租約。

    8.public final String changeLease(final String proposedLeaseId, final AccessCondition accessCondition)

將現有的租賃ID更改為建議的租賃ID

    9.public final String changeLease(final String proposedLeaseId, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

使用指定的訪問條件、請求選項和操作上下文將現有的租賃ID更改為建議的租賃ID

    10.public final CloudBlob createSnapshot()

    11.public final CloudBlob createSnapshot(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

    12.public final CloudBlob createSnapshot(final HashMap<String, String> metadata, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

創建blob的快照。

    13.public final void delete()

刪除blob。如果在服務上啟用了刪除保留策略,那麽在垃圾收集永久刪除之前,blob將被保留一段指定的時間。

    14.public final void delete(final DeleteSnapshotsOption deleteSnapshotsOption, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

使用指定的快照和請求選項和操作上下文刪除blob。如果在服務上啟用了刪除保留策略,那麽在垃圾收集永久刪除之前,blob將被保留一段指定的時間。具有快照的blob不能被刪除,除非快照也被刪除。如果一個blob有快照,請在參數中使用DeleteSnapshotsOption#DELETE_SNAPSHOTS_ONLYDeleteSnapshotsOption# include_snapshot值來指定刪除blob時應該如何處理快照。

    

15.public final boolean deleteIfExists()

如果blob存在,則刪除它。具有快照的blob不能被刪除,除非快照也被刪除。如果一個blob有快照,請在參數中使用DeleteSnapshotsOption#DELETE_SNAPSHOTS_ONLYDeleteSnapshotsOption# include_snapshot值來指定刪除blob時應該如何處理快照。

    16.public final boolean deleteIfExists(final DeleteSnapshotsOption deleteSnapshotsOption, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

如果blob存在,使用指定的快照和請求選項以及操作上下文刪除它。具有快照的blob不能被刪除,除非快照也被刪除。如果一個blob有快照,請在參數中使用DeleteSnapshotsOption#DELETE_SNAPSHOTS_ONLYDeleteSnapshotsOption# include_snapshot值來指定刪除blob時應該如何處理快照。

    17.public final void download(final OutputStream outStream)

    18.public final void download(final OutputStream outStream, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

下載。

    19.public final void downloadAttributes()

    20.public final void downloadAttributes(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

此方法填充blob的系統屬性和用戶定義的元數據。在讀取或修改blob的屬性或元數據之前,調用此方法或其重載,以從Microsoft Azure存儲服務檢索blob屬性和元數據的最新值。

    

    21.public final void downloadRange(final long offset, final Long length, final OutputStream outStream)

    22.public final void downloadRange(final long offset, final Long length, final OutputStream outStream, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

    23.public final int downloadRangeToByteArray(final long offset, final Long length, final byte[] buffer, final int bufferOffset)

    24.public final int downloadRangeToByteArray(final long offset, final Long length, final byte[] buffer, final int bufferOffset, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

    25.public final int downloadToByteArray(final byte[] buffer, final int bufferOffset)

    26.public final int downloadToByteArray(final byte[] buffer, final int bufferOffset, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

    27.public void downloadToFile(final String path)

    28.public void downloadToFile(final String path, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

下載。

    29.public final boolean exists()

    30.public final boolean exists(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

檢查該blob是否存在。

    31.public String generateSharedAccessSignature(final SharedAccessBlobPolicy policy, final SharedAccessBlobHeaders headers, final String groupPolicyIdentifier)

使用指定的組策略標識符和操作上下文為blob返回共享訪問簽名。註意,這並不包含“?”。

    32.public final CloudBlobContainer getContainer()

    33.public CopyState getCopyState()

    34.public final HashMap<String, String> getMetadata()、public final void setMetadata(final HashMap<String, String> metadata)

blob的元數據。

    35.public final String getName()

    36.public final CloudBlobDirectory getParent()

    37.public final BlobProperties getProperties()、protected final void setProperties(final BlobProperties properties)

    38.public final StorageUri getQualifiedStorageUri()

返回此blob的快照和/或共享訪問簽名限定URI

    39.public final URI getQualifiedUri()

返回此blob的快照或共享訪問簽名限定URI

    40.public final CloudBlobClient getServiceClient()

返回與Blob關聯的Blob服務客戶端。

    41.public final String getSnapshotID()

    42.public final StorageUri getSnapshotQualifiedStorageUri()

blobURI返回到主位置和次要位置,如果blob是快照,則包括查詢字符串信息。

    43.public final URI getSnapshotQualifiedUri()

blob返回絕對URI,如果blob是快照,則包括查詢字符串信息

    44.public final StorageUri getStorageUri()

所有位置的uri列表。

    45.public final int getStreamMinimumReadSizeInBytes()、public void setStreamMinimumReadSizeInBytes(final int minimumReadSize)

使用BlobInputStream時的最小讀取大小。

    46.public final int getStreamWriteSizeInBytes()、public abstract void setStreamWriteSizeInBytes(int streamWriteSizeInBytes)

寫入BlobOutputStream(塊和頁面blobs)時要緩沖的字節數。

    47.public final URI getUri()

    48.public final boolean isSnapshot()

    49.public final BlobInputStream openInputStream()

    50.public final BlobInputStream openInputStream(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

打開一個blob輸入流下載該blob。使用setStreamMinimumReadSizeInBytes(int)配置讀取大小。

    51.public final void releaseLease(final AccessCondition accessCondition)

    52.public final void releaseLease(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

釋放blob上的租約。

    53.public final void renewLease(final AccessCondition accessCondition)

    54.public final void renewLease(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

更新現有的租賃

    55.public final String startCopy(final URI source)

請求服務開始將URI的內容、屬性和元數據復制到新的blob

    56.public final String startCopy(final URI source, final AccessCondition sourceAccessCondition, final AccessCondition destinationAccessCondition, BlobRequestOptions options, OperationContext opContext)

請求服務使用指定的訪問條件、租用ID、請求選項和操作上下文,開始將URI的內容、屬性和元數據復制到新的blob

    57.public final void undelete()

取消刪除一個blob及其所有已被軟刪除的快照。

    58.public final void undelete(BlobRequestOptions options, OperationContext opContext)

使用指定的請求選項和操作上下文刪除已被軟刪除的blobundelete Blob操作還原軟刪除的Blob及其所有快照的內容和元數據。嘗試刪除非軟刪除的blob或快照,將在沒有任何更改的情況下成功。

    59.public abstract void upload(InputStream sourceStream, long length)

    60.public abstract void upload(InputStream sourceStream, long length, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

將源流數據上傳至blob。如果blob已經存在於服務上,那麽它將被覆蓋。

    61.public void uploadFromByteArray(final byte[] buffer, final int offset, final int length)

    62.public void uploadFromByteArray(final byte[] buffer, final int offset, final int length, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

從字節數組中的數據上載blob。如果blob已經存在於服務上,那麽它將被覆蓋。

    63.public void uploadFromFile(final String path)

    64.public void uploadFromFile(final String path, final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

從文件上載blob。如果blob已經存在於服務上,那麽它將被覆蓋。

    65.public final void uploadMetadata()

    66.public final void uploadMetadata(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

將blob的元數據上傳至存儲服務。使用CloudBlob#downloadAttributes檢索來自Microsoft Azure存儲服務的blob屬性和元數據的最新值。

    

    67.public final void uploadProperties()

    68.public final void uploadProperties(final AccessCondition accessCondition, BlobRequestOptions options, OperationContext opContext)

將blob的屬性更新到存儲服務。使用CloudBlob#downloadAttributesMicrosoft Azure存儲服務獲取blob的屬性和元數據的最新值

Azure系列2.1.9 —— CloudBlob