다가오는 다음을 향해

[SpringBoot JPA] UUID 조회 본문

SpringBoot

[SpringBoot JPA] UUID 조회

hyeseo 2022. 8. 29. 16:49

JPA CURD 테스트 중 save(등록), findAll(전체 목록 조회) 까지 성공했지만

 

단일조회 시

Test test = testRepository.findById(uuid).get();

 

1. UUID.nameUUIDFromBytes()는 UUID가 다르게 변환되고

2. UUID.fromString()은 java.lang.IllegalArgumentException 이 발생했습니다.

 

 

Entity 일부 (PK: id-uuid)

    @Id
    @GeneratedValue(generator = "uuid")
    @GenericGenerator(name = "uuid", strategy = "uuid2")
    @Column(name = "id", columnDefinition = "BINARY(16)")
    private UUID id;

 

 

해결방법

 

참고: https://stackoverflow.com/questions/18871980/uuid-fromstring-returns-an-invalid-uuid

 

UUID.fromString() returns an invalid UUID?

In my Android app I've got this method which takes a UUID. Unfortunately when I do this: OverviewEvent overviewevent = eventAdapter.getOverviewEvent(UUID.fromString("0f14d0ab-9605-4a62-a9e4-5ed266...

stackoverflow.com

위 링크를 참고하여 단일 UUID 조회에 성공했습니다.

 

[참고 code]

String s = "0f14d0ab-9605-4a62-a9e4-5ed26688389b";
String s2 = s.replace("-", "");
UUID uuid = new UUID(
        new BigInteger(s2.substring(0, 16), 16).longValue(),
        new BigInteger(s2.substring(16), 16).longValue());
System.out.println(uuid);

 

[조회 결과]