728x90
반응형
SMALL

안녕하세요!

프뚜(프로그래머 뚜)입니다!

 

[개발 환경]

 - OS: windows 10 64bit

 

Spring(java)를 통해 애저 서비스 > 스토리지 > blob을 사용할 수 있는 방법에 대해 포스팅하려고 합니다.

 

 

1. Azure Service > 스토리지 계정을 접속하기

ssjeong 스토리지에 접속합니다.

 

 

2. 좌측 메뉴 > 보안 + 네트워킹 > 액세스 키로 이동하기

 

 

3. key1의 키와 연결 문자열을 표시로 선택 후 복사하기

 AccountKey(account-key)이라고 하며, 연결 문자열 AccountName(account-name)이라고 명칭합니다.

※ 키 회전을 하게 되면 키가 변경됩니다. 키가 변경되면 키, 연결 문자열을 바꿔야합니다.

 

 

4. Spring > build.gradle > azure lib 추가하기
// 2022.09.27[프뚜]: azure lib
implementation('com.microsoft.azure:azure-storage:8.6.6')
implementation("nio:nio:1.0.4")

 

 

5. 스토리지 계정 > 데이터 스토리지 > 컨테이너 연결 > 업로드 하기
# 2022.09.27[프뚜]: 스토어 연결을 위해 인증
String storageConnectionString =
        "DefaultEndpointsProtocol=https;" +
                "AccountName=<account-name/>;" +
                "AccountKey=<account-key/>";

# 2022.09.27[프뚜]: 스토리지 계정 > 데이터 스토리지 > 컨테이너 연결
CloudStorageAccount storageAccount = CloudStorageAccount.parse(storageConnectionString);
CloudBlobClient blobClient = storageAccount.createCloudBlobClient();

# 2022.09.27[프뚜]: 컨테이너명
CloudBlobContainer container = blobClient.getContainerReference("ssjeong");
container.createIfNotExists(new BlobRequestOptions(), new OperationContext());

# 2022.09.27[프뚜]: 업로드 대상
Path path = Paths.get("D:\\ssjeong\\test.mp4");

# 2022.09.27[프뚜]: 컨테이너에 저장 > 경로 + 파일명, 타입 지정
CloudBlockBlob blob = container.getBlockBlobReference("example/" + path.toFile().getName());
blob.getProperties().setContentType("video/mp4");

# 2022.09.27[프뚜]: blob 업로드 실행
blob.uploadFromFile(path.toFile().getAbsolutePath());

3번에서 저장한 키와 연결 문자열 사용합니다.
- account-name > 키
- account-key > 연결 문자열

 

 

해당 프로젝트는 gitlab에 제공되고 있습니다. (포스팅 제목과 Git History는 1:1 매칭입니다.)
https://github.com/JeongSeongSoo/spring-tistory.git

 

GitHub - JeongSeongSoo/spring-tistory

Contribute to JeongSeongSoo/spring-tistory development by creating an account on GitHub.

github.com


궁금하신 부분 또는 문제가 생긴 부분에 대해서 댓글 남겨주시면 빠르고 정확한 답변드리겠습니다.

728x90
반응형
LIST
프뚜