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.

127 HIBERNATE SEARCH2021 manager . persist (p1);22 manager . persist (p2);23 manager . persist (p3);24 manager . persist (p4);2526 manager . getTransaction (). <strong>com</strong>mit ();27 manager . close ();28 factory . close ();29 }30 }Código Java A.8: AdicionaPessoa.java8 Execute a indexação dos dados armazenados no banco de dados. Crie uma classe chamadaIndexacao dentro de um pacote chamado testes.1 public class Indexacao {2 public static void main ( String [] args ) throws InterruptedException {3 EntityManagerFactory factory =4 Persistence . createEntityManagerFactory (" K21_hibernate_search ");5 EntityManager manager = factory . createEntityManager ();67 FullTextEntityManager fullTextManager = Search . getFullTextEntityManager ( manager );8 fullTextManager . createIndexer (). startAndWait ();910 manager . close ();11 factory . close ();12 }13 }Código Java A.9: Indexacao.java9 Busque as pessoas que possuam a palavra Hirata em seus nomes. Crie uma classe chamadaBusca dentro de um pacote chamado testes.1 public class Busca {2 public static void main ( String [] args ) {3 EntityManagerFactory factory =4 Persistence . createEntityManagerFactory (" K21_hibernate_search ");5 EntityManager manager = factory . createEntityManager ();67 FullTextEntityManager fullTextManager = Search . getFullTextEntityManager ( manager );8 SearchFactory searchFactory = fullTextManager . getSearchFactory ();9 QueryBuilder pessoaQueryBuilder =10 searchFactory . buildQueryBuilder (). forEntity ( Pessoa . class ). get ();1112 org . apache . lucene . search . Query luceneQuery13 = pessoaQueryBuilder . keyword (). onField (" nome "). matching (" Hirata "). createQuery ();1415 javax . persistence . Query jpaQuery =16 fullTextManager . createFullTextQuery ( luceneQuery , Pessoa . class );1718 List < Pessoa > pessoas = jpaQuery . getResultList ();1920 for ( Pessoa p : pessoas ) {21 System . out . println (p. getNome ());22 }2324 manager . close ();25 factory . close ();26 }27 }Código Java A.10: Busca.javawww.k19.<strong>com</strong>.br 127

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

Saved successfully!

Ooh no, something went wrong!