javax.persistence
Annotation Type NamedQuery


@Target(value=TYPE)
@Retention(value=RUNTIME)
public @interface NamedQuery

Is used to specify a named query in the Java Persistence query language, which is a static query expressed in metadata. Query names are scoped to the persistence unit.

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();
 

Since:
Java Persistence 1.0

Required Element Summary
 String name
          Refers to the query when using the EntityManager methods that create query objects.
 String query
          The query string in the Java Persistence query language
 
Optional Element Summary
 QueryHint[] hints
          Vendor-specific query hints
 

Element Detail

name

public abstract String name
Refers to the query when using the EntityManager methods that create query objects.


query

public abstract String query
The query string in the Java Persistence query language

hints

public abstract QueryHint[] hints
Vendor-specific query hints

Default:
{}


Submit a bug or feature

Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.