@Repeatable(NamedQueries.class) @Target(TYPE) @Retention(RUNTIME) public @interface NamedQuery
NamedQuery
annotation can be applied to an entity or mapped superclass.
The following is an example of the definition of a named query in the Java Persistence query language:
@NamedQuery( name="findAllCustomersWithName", query="SELECT c FROM Customer c WHERE c.name LIKE :custName" )
The following is an example of the use of a named query:
@PersistenceContext public EntityManager em; ... customers = em.createNamedQuery("findAllCustomersWithName") .setParameter("custName", "Smith") .getResultList();
Modifier and Type | Required Element | Description |
---|---|---|
java.lang.String |
name |
(Required) The name used to refer to the query with the
EntityManager
methods that create query objects. |
java.lang.String |
query |
(Required)
The query string in the Java Persistence query language.
|
Modifier and Type | Optional Element | Description |
---|---|---|
QueryHint[] |
hints |
(Optional) Query properties and hints.
|
LockModeType |
lockMode |
(Optional) The lock mode type to use in query execution.
|
java.lang.String name
EntityManager
methods that create query objects.LockModeType lockMode
lockMode
other than LockModeType.NONE
is specified, the query must be executed in
a transaction and the persistence context joined to the transaction.QueryHint[] hints
Copyright © 2018. All rights reserved.