Reputation: 58662
In Pro JPA 2 (Apress) book, I have seen examples like,
EntityManager em;
Long count = em.createNamedQuery(countQueryName, Long.class).getSingleResult();
But, the api , hopefully applied to JPA 2.0, shows the syntax as
createNamedQuery(String name)
Parameters:
name - the name of a query defined in metadata
with a single parameter. The book uses the type extensively, so what am I missing?
thanks.
Upvotes: 1
Views: 3474
Reputation: 47913
Java EE 5 uses JPA 1 and Java EE 6 uses JPA 2. Here's the method you're looking for:
createNamedQuery(java.lang.String name, java.lang.Class resultClass):
Create an instance of
TypedQuery
for executing a Java Persistence query language named query. The select list of the query must contain only a single item, which must be assignable to the type specified by theresultClass
argument.Parameters:
name
- the name of a query defined in metadataresultClass
- the type of the query resultReturns: the new query instance
Throws:
IllegalArgumentException
- if a query has not been defined with the given name or if the query string is found to be invalid or if the query result is found to not be assignable to the specified typeSince: Java Persistence 2.0
Upvotes: 2