Ich verwende Spring Data JPA (mit Hibernate als meine JPA-Provider) und will eine exists
Methode mit einer HQL-Abfrage definieren angehängt:Spring Data JPA und Exists Abfrage
public interface MyEntityRepository extends CrudRepository<MyEntity, String> {
@Query("select count(e) from MyEntity e where ...")
public boolean existsIfBlaBla(@Param("id") String id);
}
Wenn ich diese Abfrage ausführen, Ich bekomme eine java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Boolean
.
Wie muss die HQL-Abfrage aussehen, damit dies funktioniert? Ich weiß, ich könnte einfach einen Long-Wert zurückgeben und hinterher meinen Java-Code einchecken, wenn count > 0
, aber diese Problemumgehung sollte nicht notwendig sein, oder?
offensichtlich könnten Sie Ihre JPQL Abfrage ändern, um eine boolean ... durch nicht wiederkehrende „count (e)“ zurückzukehren und stattdessen einen Booleschen Ausdruck –