bekam ich die folgende DatenstrukturAbfrage Kartenwert mit SpringData und QueryDSL-JPA
@Entity
public class Publication {
private Map<Integer, Author> authors;
// more stuff
}
@Entity
public class Author {
private String name;
// more stuff
}
Ich bin für eine Abfrage dsl Prädikat suchen, die meine ganze Publikation gibt, wo jeder Author.name zum Beispiel eine bestimmte Zeichenfolge enthält „Hans“
Ich habe versucht:
QPublication publication = QPublication.publication;
QAuthor author = QAuthor.author;
publication.authors.containsValue(JPAExpressions.selectFrom(author).where(author.lastName.containsIgnoreCase("Hans")));
Aber dies beklagt, wenn es mehr als ein Autor ist „Hans“ im Namen enthält. Gibt es einen Moment wie publication.authors.anyValue().name.equalsIgrnoreCase("Hans")
wie es für ein Set ist?
Seit ' Publication.authors' ist eine Map, es gibt keine 'publication.author' Der' BoolenBuilder' wird nicht benötigt, wenn Sie nur eine Bedingung haben – dve