52 votes

La méthode query.list () hibernate renvoie une liste vide au lieu d'une valeur null

Query.list () et critère.list () renvoient une liste vide à la place d'une valeur null. Quelle est la raison derrière cela?

109voto

Péter Török Points 72981

La raison n'est pas de forcer la valeur null vérifie dans le code client, en cohérence avec Efficace Java 2nd Edition, Point 43: de Retour à vide des tableaux ou des collections, et non pas les valeurs null.

Cela rend le code client plus simple et moins sujettes à l'erreur (et très probablement, la méthode de la mise en œuvre).

Le null-retour idiome est probablement un vestige de la programmation en C, en la pile de longueurs sont retournés séparément à partir de véritables tableaux. En C, il n'y a pas de l'avantage de l'allocation d'un tableau si zéro est renvoyé dans la longueur.

11voto

Sjoerd Points 34671

C'est consistant: une liste est retournée avec tous les résultats, qu'il y en ait ou non.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X