J'essaie d'implémenter une fonction de recherche dans mon application en utilisant la recherche hibernate (lucene). Les recherches simples sur les champs de cordes fonctionnent parfaitement, mais maintenant les choses viennent plus compliquées .... J'espère que vous pouvez me donner quelques conseils ou échantillons.Hibernate Lucene rechercher des collections et des énumérations
je les entités suivantes ...
@Entity
@Indexed
public class ChildClass {
@Enumerated
@Field(index = Index.YES, analyze = Analyze.YES, store = Store.YES)
private EnumType enumType;
....
//getter setter
}
=============================== =========
@Entity
@Indexed
public class ParentClass {
@IndexEmbeded
List<ChildClass> childs;
//getter setter...
}
================================== ======
public enum EnumType {
a,b,c
}
===================================== ==
Maintenant, j'essayer de chercher et trouver par exemple:
« trouver une liste des ParentClasses qui ont Childs où child.enumtype = a »
Je peux le faire avec hql ou des requêtes SQL natives. mais comment le faire avec des requêtes hibernate lucene.
Merci à l'avance
pour clarification: – user2439522
Juste pour clarification pour Cartes par exemple \t @Field (index = Index.YES, analyse = Analyze.YES, store = Store.NON) @IndexedEmbedded (depth = 1) private Carte commentaires; \t je peux utiliser une requête comme: luceneQuery = queryBuilder.keyword() générique() Onfield ("commentaires") de correspondance ( searchString) .createQuery();... booleanJunction.should (luceneQuery); \t \t \t ce qurey renvoie les résultats comme prévu. J'ai un problème avec le cas d'utilisation décrit ci-dessus –
user2439522