Tôi đã phải đối mặt với cùng một vấn đề. Nguyên nhân sâu xa là do sự không khớp giữa quan hệ @ManyToOne non-nullable và dữ liệu vẫn tồn tại trong bảng. Tôi có điều này:
@ManyToOne(optional = false)
@JoinColumn(name="batch_id")
private Batch batch;
có nghĩa là batch_id không được để trống trong bất kỳ hàng nào. Tuy nhiên, các hàng của tôi có giá trị null cho khóa ngoại batch_id. Sau khi xóa tùy chọn =false (là quy tắc kinh doanh dự kiến), findById bắt đầu hoạt động như mong đợi.
Nhận được dấu hiệu từ chủ đề này: Tôi rất mệt khi phải làm gì đó với JpaRepository nhưng không thể tìm thấy hàng với findById,