Làm sao để test id không phải là UUID

Chào mọi người, em đang làm bài tập về java spring boot,
Em tạo đối tượng sinh viên, sinh viên có trường UUID id
Khi em viết hàm update cho sinh viên với id được nhập vào em gặp vấn đề là khi em test phần kiểm tra id có tồn tai không thì em chỉ có thể test id đúng ở dạng UUID, ví dụ như “52b3f2c4-7b89-4741-9058-aee22a244032” còn nêu em test id như “384223” thì không được. Em phải làm như thế nào để có thể test được id như “384223” vậy ạ.
Đây là đoạn code test phân kiểm tra id có tồn tại hay không của em.

không được là không được như thế nào?

2 Likes

param idSinhVien trong method kiemTraIdSinhVienTonTai(UUID idSinhVien) có data type là UUID nên truyền 384223 vào để test sẽ không parse được gây lỗi.

1 Like

Đó là tính năng, không phải lỗi. Khi 1 cột được định nghĩa theo 1 kiểu nào đó thì bạn cần truyền đúng dữ liệu theo định dạng được định nghĩa biểu diễn cho loại dữ liệu đó.
VD: 1 trường có kiểu là date nhưng bạn truyền vào abc thì chương trình phải xử lí như thế nào? Khi nhìn vào 3 kí tự abc thì biết là dữ liệu biểu diễn cho ngày nào?

6 Likes

Bạn thử ép kiểu sang String trước khi truyền vào hàm xem sao .
Viết lại cái hàm để nó xử lí dữ liệu với String mà k phải kiểu UUID nữa.Còn nếu để nguyên là UUID thì chắc chắn k xử lí đc vì như bạn trên đã nói !

em cảm ơn em hiểu rồi ạ.

vâng ạ qua e hơi lú hehe

1 Like

hôm qua hỏi k rõ, lẽ ra em phải hỏi là khi id là UUID mà em nhập id là string vào thì làm sao để kiểm tra kiểu dữ liệu của id không hợp lệ và báo lỗi. Hôm nay em hiểu rồi ạ, em cảm ơn.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?