결정적 UUID v5
| 항목 | 값 |
|---|---|
| 화면 이름 | UUID V5 |
| 식별자 | uuidV5V1 |
| 지원 실행 방식 | Batch, Faster, Streaming |
| 범주 | 문자열 (String) |
| 반환 자료형 | String |
이름 공간 UUID와 이름 문자열을 SHA-1로 해시하여 RFC 4122의 UUID v5를 만듭니다. 같은 이름 공간과 이름은 항상 같은 UUID를 생성합니다. 이름 공간이 유효한 UUID가 아니면 null을 반환합니다.
입력 인자
| 이름 | 지정 여부 | 자료형 | 의미와 조건 |
|---|---|---|---|
Name | 필수 | Expression<String> | 이름 공간과 함께 해시하여 결정적인 UUID를 만들 이름 문자열입니다. |
Namespace UUID | 필수 | Expression<String> | 이름 공간으로 사용할 유효한 UUID 문자열입니다. |
입출력 예시
예시 1: 기본 동작
이름 공간 UUID와 이름 문자열로 결정적인 UUID v5를 만듭니다.
인자 값:
Name:nameNamespace UUID:namespace
| namespace | name | 출력 |
|---|---|---|
| 6ba7b810-9dad-11d1-80b4-00c04fd430c8 | hello | 9342d47a-1bab-5709-9869-c840b2eac501 |
| 6BA7B810-9DAD-11D1-80B4-00C04FD430C8 | hello | 9342d47a-1bab-5709-9869-c840b2eac501 |
| 6ba7b811-9dad-11d1-80b4-00c04fd430c8 | https://example.com | 4fd35a71-71ef-5a55-a9d9-aa75c889a6d0 |
예시 2: null 처리
인자 값:
Name:nameNamespace UUID:namespace
| namespace | name | 출력 |
|---|---|---|
| null | hello | null |
| 6ba7b810-9dad-11d1-80b4-00c04fd430c8 | null | null |
| null | null | null |
예시 3: 경계 조건
인자 값:
Name:nameNamespace UUID:namespace
| namespace | name | 출력 |
|---|---|---|
| not-a-uuid | hello | null |
| empty string | hello | null |
| 1-2-3-4-5 | hello | 85cac0b3-f821-5e29-ad03-7e26926dfdc3 |
| +1-2-3-4-5 | hello | 85cac0b3-f821-5e29-ad03-7e26926dfdc3 |
| 123456789-1-1-1-1 | hello | 521c6c9d-6fff-59c1-aaed-00192ec1d25c |
| 0000000000000000000001-1-1-1-1 | hello | 8bfab908-d58d-575d-b302-93686b232a3d |
| 6ba7b8109dad11d180b400c04fd430c8 | hello | null |
| {6ba7b810-9dad-11d1-80b4-00c04fd430c8} | hello | null |
| urn:uuid:6ba7b810-9dad-11d1-80b4-00c04fd430c8 | hello | null |