To jest bardziej sugestia poprawy niż pytanie.Dlaczego dane sprężyn wciąż używają odwołań zerowych jako wartości zwracanych?
Wszyscy wiemy o "pomyłce miliarda dolarów" Tony'ego Hoare, wymyślając referencję zerową. Porady Google na wiki od guava library do avoid using null.
Bardzo doceniam projekt Spring Data i używamy Spring Data MongoDB w wielu projektach. Czy jest szansa, że zastąpisz wszystkie możliwe wartości zwracane przez referencję zerową przez Optional<T>
? Myślę, że byłaby to duża poprawa w przypadku korzystania z abstrakcji repozytoriów Spring Data.
Wiem, że wiele interfejsów musiałaby zostać zmieniona, ale zmiany w kodzie są niemal banalne, wystarczy zawrzeć typ zwrotu w postaci Optional.of(returnValue)
.
Nie możesz mieć findOne z opcją fakultatywną, ponieważ ta metoda już istnieje z typem zwrotu Klient bez Opcjonalnie – krmanish007
findOne bez Opcjonalny jest tylko obecny w CrudRepository. Ta odpowiedź działa, jeśli twój interfejs rozszerza repozytorium. –