UUID 란?
네트워크 상에서 고유성이 보장되는 id를 만들기 위한 표준 규약이며 범용고유식별자 UUID (Universally Unique IDentifier) 이라고 한다.
UUID는 128비트의 숫자이며, 32자리의 16진수로 표현된다. 여기에 8-4-4-4-12 글자마다 하이픈을 집어넣어 5개의 그룹으로 구분한다.
550e8400-e29b-41d4-a716-446655440000
UUID를 사용해서 파일이름 랜덤으로 만들기 예제
- 총 세가지 유형이다.
1) MultipartFile일 때
2) File 일 때
3) 고유하기 파일이름 만들기 .png는 예시 다른걸 붙힐 수도 안붙힐 수도 있음
/* MultipartFile 데이터 타입 파일이름 재설정 */
public String makeFileName(MultipartFile attcFile) {
String attcFileNm = UUID.randomUUID().toString().replaceAll("-", "");
String attcFileOriNm = attcFile.getOriginalFilename();
String attcFileOriExt = fileExtCheck(attcFileOriNm.substring(attcFileOriNm.lastIndexOf(".")));
return attcFileNm + attcFileOriExt;
}
/* File데이터타입 파일이름 재설정 */
public String makeFileName(File attcFile) {
String attcFileNm = UUID.randomUUID().toString().replaceAll("-", "");
String attcFileOriNm = attcFile.getName();
String attcFileOriExt = fileExtCheck(attcFileOriNm.substring(attcFileOriNm.lastIndexOf(".")));
return attcFileNm + attcFileOriExt;
}
/* 고유하기 파일이름 만들기 .png는 예시 다른걸 붙힐 수도 안붙힐 수도 있음*/
public String makeFileName() {
String attcFileNm = UUID.randomUUID().toString().replaceAll("-", "");
return attcFileNm + ".png";
}
-
확장자 체크하기
- 파일 이름을 인자로 넘겨주면 확장자를 추출해하고 비교를 한다.
public String fileExtCheck(String file) {
String originalFileExtension = file.substring(attcFileOriNm.lastIndexOf("."));
originalFileExtension = originalFileExtension.toLowerCase();
if (originalFileExtension.equals(".jpg") || originalFileExtension.equals(".gif")
|| originalFileExtension.equals(".png") || originalFileExtension.equals(".jpeg")
|| originalFileExtension.equals(".bmp")) {
return originalFileExtension;
}
throw new RuntimeException(originalFileExtension + "는 지원하지 않습니다.");
}
'몰아 넣기' 카테고리의 다른 글
[java/spring] jwt 예제 (JWT example) (0) | 2022.07.10 |
---|---|
[자바/spring] 이미지 업로드 예제 (0) | 2022.07.10 |
[java/spring/api] 스프링부트 구글 로그인 인가코드 또는 엑세스토큰을 이용하여 구현하기 (0) | 2022.07.03 |
[그 외] 프로젝트 폴더 구조 (0) | 2022.06.29 |
[그 외] REST API 란? (0) | 2022.06.29 |