11.07.2015 Views

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

Persistência com JPA2 e Hibernate - Inpi

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

107 CRITERIA1 CriteriaQuery c = cb. createQuery ( Tuple . class );2 Root l = c. from ( Livro . class );3 c. multiselect (l.< String > get (" nome "). alias (" livro . nome "), l.< Double > get (" preco "). alias (←" livro . preco "));45 TypedQuery query = manager . createQuery (c);6 List resultado = query . getResultList ();78 for ( Tuple registro : resultado ) {9 System . out . println (" Livro : " + registro . get (" livro . nome "));10 System . out . println (" Preço : " + registro . get (" livro . preco "));11 }Código Java 5.16: Usando a interface Tuple para manipular os dados da consultaExercícios de Fixação7 Recupere uma listagem <strong>com</strong> os nomes dos livros cadastrados no banco de dados. Adicione aseguinte classe no pacote br.<strong>com</strong>.k19.testes do projeto K19-Criteria.1 public class ListaNomesDosLivros {2 public static void main ( String [] args ) {3 EntityManagerFactory factory = Persistence4 . createEntityManagerFactory (" K21_criteria_pu ");5 EntityManager manager = factory . createEntityManager ();67 CriteriaBuilder cb = manager . getCriteriaBuilder ();8 CriteriaQuery < String > c = cb. createQuery ( String . class );9 Root livro = c. from ( Livro . class );10 c. select ( livro .< String > get (" nome "));1112 TypedQuery < String > query = manager . createQuery (c);13 List < String > nomes = query . getResultList ();1415 for ( String nome : nomes ) {16 System . out . println (" Livro : " + nome );17 }1819 manager . close ();20 factory . close ();21 }22 }Código Java 5.17: ListaNomesDosLivros.java8 Recupere a média dos valores dos livros cadastrados no banco de dados. Adicione a seguinteclasse no pacote br.<strong>com</strong>.k19.testes do projeto K19-Criteria.1 public class CalculaMediaDosPrecosDosLivros {2 public static void main ( String [] args ) {3 EntityManagerFactory factory = Persistence4 . createEntityManagerFactory (" K21_criteria_pu ");5 EntityManager manager = factory . createEntityManager ();67 CriteriaBuilder cb = manager . getCriteriaBuilder ();8 CriteriaQuery < Double > c = cb. createQuery ( Double . class );9 Root l = c. from ( Livro . class );10 c. select (cb.avg (l.< Double > get (" preco ")));1112 TypedQuery < Double > query = manager . createQuery (c);13 Double media = query . getSingleResult ();14www.k19.<strong>com</strong>.br 107

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!