[Logo] Mentawai Forum - Mentawai Web Framework
  [Search] Search   [Recent Topics] Recent Topics   [Members]  Member Listing   [Groups] Back to home page 
[Register] Register / 
[Login] Login 

Forum Read-Only! Check the new site and forum here!

32) Como usar Mentawai com JPA  XML
Forum Index -> F.A.Q.
Author Message
boaglio


[Avatar]

Joined: 28/09/2005 11:05:16
Messages: 299
Location: Sao Paulo - Brazil
Offline

Seguindo a tradição de facilidade de desenvolvimento, trabalhar a sua aplicação Mentawai com JPA é muito fácil!

Se você não conhece nada de JPA dê uma olhada nesse Hello JPA World e no Java Persistence API FAQ .

Abaixo a única coisa que você precisa fazer para habilitar o uso de JPA:

declarar a Persistence Unit no ApplicationManager


Code:
 
     public void loadActions() {
 
     	// seta o persistent-unit do JPA
     	JPAHelper.setPersistenceUnit("meuBancoDeDados");
    
        //  suas actions
 


Pronto! Depois disso é só sair usando!

Pela definição do JPA, dentro do META-INF da sua aplicação deve existir um arquivo persistence.xml com as informações de conexão do banco de dados e de qual implementação de persistência você vai usar: Oracle Toplink, EJB3 ou Hibernate. Esse exemplo é do último citado:

Code:
<persistence xmlns="http://java.sun.com/xml/ns/persistence"   
 xmlnssi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/persistence         
    version="1.0">
    <persistence-unit name="meuBancoDeDados">
 <provider>org.hibernate.ejb.HibernatePersistence</provider>
            <class>org.mentawai.list.ListDataItemJPA</class>
       <properties>
           <property name="hibernate.archive.autodetection" value="class, hbm"/>
           <property name="hibernate.show_sql" value="true"/>
     	  <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
 		  <property name="connection.driver_class" value="com.mysql.jdbc.Driver"/>
 		  <property name="connection.url" value="jdbc:mysql://localhost/meuBanco"/>
 		  <property name="connection.username" value="root"/>
 		  <property name="connection.password" value=""/>
 		  <property name="connection.pool_size" value="5"/>		  
       </properties>
    </persistence-unit>
 </persistence>
 


para fazer suas consultas:

Exemplo de consultar uma empresa:

Code:
    	EntityManager em = JPAHelper.getEntityManagerForQueries();
     	Empresa empresa = em.find(Empresa.class, codigo); 
     	JPAHelper.closeEntityManagerForQueries(em);



Para fazer suas transações:

Exemplo de gravar uma empresa:

Code:
     	EntityManager em = JPAHelper.beginTransaction();
     	em.persist(empresa);
     	JPAHelper.commitTransaction(em);
 


usar com DBListData

Se você precisar de um combo de empresas como esse:

Code:
         DBListData dbListData = new DBListData("empresas", "codigo", "nome", "Empresa", "nome");


A chamada para carregar a lista é essa:

Code:
        
 try{
         dbListData.loadUsingJPA();
       } catch(SQLException e){     }
 
    ListManager.addList(dbListData);
 


Atualmente o suporte ao JPA só existe na versão beta, mas em breve estará disponível.

Bom proveito e boas transações !


http://www.boaglio.com
[WWW]
 
Forum Index -> F.A.Q.
Go to:   
Powered by JForum 2.1.6 © JForum Team