Spring data jpa. Trouver max si pas de retour du résultat valeur par défaut
J'ai mis en place dans mon printemps référentiel d'interface:
@Query("SELECT max(ch.id) FROM MyEntity ch")
Long getMaxId();
Il fonctionne correctement si la db n'est pas vide. Si je commence mon environnement avec la configuration d'essai (H2DB est utilisé) - il n'y a pas de données dans le début. Et le résultat retourné par getMaxId()
est null. Je voudrais avoir ici 0.
Est-il possible de modifier mon *JpaRepository
avoir 0 résultat? Si oui, comment cela devrait-il être modifié?
- S'il vous plaît dites-moi, vous n'êtes pas fait pour générer les Identifiants par vous-même en incrémentant le max à chaque fois que vous insérez une nouvelle instance.
- C'est un bon point d'avoir des id générés! Et oui, j'en possède un. Et je veux avoir un seul id du générateur (igniteIdGenerator) parfois, il doit réparer son état (si le cache réparations de db, igniteIdGenerator doit être déplacé).
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
coalesce
comme :Si il n'y a pas de données, il sera de retour 0 au lieu de null.