JPA Critères de l'API: de Multiples condition de JOINTURE GAUCHE
J'ai une jointure de référence comme les suivantes, dont la première expression de la jointure est construit par l'API JPA automatiquement.
CriteriaBuilder cb = entityManager.getCriteriaBuilder();
CriteriaQuery<Tuple> c = cb.createTupleQuery();
Root<Demand> demands = c.from(Demand.class);
Join<Demand, Metadata> joinMetadata = demands.join("metadatas", JoinType.LEFT);
mais, je voudrais ajouter un supplément de condition à mon joinMetadata comme des Métadonnées.type="AFFECTATION_KEY" mais je ne sais pas comment.
Merci beaucoup pour toute aide
OriginalL'auteur yesil | 2012-06-18
Vous devez vous connecter pour publier un commentaire.
JPA toujours rejoint par le mappage des colonnes de jointure, seulement. JPA 2.0 ne prend pas en charge une clause, mais l'2.1 projet de n'avoir cette prise en charge.
EclipseLink 2.4 a un support pour un SUR la clause,
Voir,
http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Basic_JPA_Development/Querying/JPQL#ON
Il est également possible par le biais de l'API des Critères, à l'aide de la EclipseLink natif Expression API qui fournit
on
clause de soutien,Voir,
http://wiki.eclipse.org/EclipseLink/UserGuide/JPA/Basic_JPA_Development/Querying/Criteria#JpaCriteriaBuilder_and_EclipseLink_Extensions
OriginalL'auteur James
Hibernate et les Critères de l'API de la version 3.6 supporte aussi:
Ou vous souhaitez peut-être des Restrictions.eqProperty() pour que le dernier bit. Note de la sous-apprécié la version de createAlias() avec le quatrième paramètre. Voici une citation de la documentation
Paramètres:
L'API Hibernate 3.6
Et en JPQL, on pourrait utiliser la mise en veille prolongée-spécifique
WITH
ajouter supplémentaire conditions de jointure, commefrom Demand d left join Metadata md with md.type="AFFECTATION_KEY"
.JPQL ne prend pas en charge
WITH
- c'est-à HQL vous faites allusion à l'OriginalL'auteur carbontax