Domanda

vorrei sapere se posso unire 2 query denominate in JPA. Per fare un esempio ho due seguenti query denominate

1 - Ottenere tutti gli utenti attivi
2 - ottenere tutti gli utenti di una determinata società

E 'possibile per me partecipare sopra due query denominate e get ottenere tutti gli utenti attivi per una data azienda.

È stato utile?

Soluzione

Non utilizzare NamedQuery per questo. Direttamente passando una stringa di query al metodo è la soluzione migliore.

Si deve capire che il metodo createNamedQuery(String name) prende nome di una query di nome. Considerando che, createNamedQuery(String qlString)takes una stringa di query, quindi questo si adatta alle vostre necessità.

o

Crea una NamedQuery separato per questo scopo.

Altri suggerimenti

  

E 'possibile per me partecipare sopra due query denominate e ottenere tutti gli utenti attivi per una data azienda .

No, questo non è possibile. O scrivere una domanda intelligente di nome che può assumere i parametri di esprimere tutti i casi (se possibile) o utilizzare diverse query denominate.

E se si utilizza JPA 2.0, l'API Criteri potrebbe essere un altro (migliore) possibilità di query dinamiche di scrittura.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top