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.
Làm sao để test id không phải là UUID
không được là không được như thế nào?
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.
Đó 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?
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
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.