..


Sponsoroidut linkit

Data Access - Creating DAO ja transaction management

Viitaten esimerkki edellisessä kohdassa, näemme miten luoda DAO yhteisölle Car.

Ensinnäkin creaimo rajapinta perustuvia menetelmiä DAO eli: kuormitus, tallentaa, päivittää ja poistaa.






 it.mrwebmaster.hibernate.dao paketti;









 it.mrwebmaster.hibernate.Car tuontia;









 {Julkinen rajapinta CarDao





  



 yleinen pysäköintialue kuorma (Integer id);



	

  



 säästää julkisia Car (Car car);



	

  



 update julkinen Car (Car car);



	

  



 public void poista (Car car);







 }



Luotu käyttöliittymä kulkea luomiseen täytäntöönpanoa:





 it.mrwebmaster.hibernate.dao paketti;









 it.mrwebmaster.hibernate.Car tuontia;









 javax.persistence.EntityManager tuontia;







 javax.persistence.PersistenceContext tuontia;









 org.springframework.transaction.annotation.Transactional tuontia;









 @ Transactional







 CarDaoImpl {public class toteuttaa CarDao





  



 @ PersistenceContext (unitName = "voi")



  



 yksityiset EntityManager EM;



	

  



 @ Override



  



 public void poista (Car car) {



    



 em.remove (char);



  



 }





  



 @ Override



  



 @ Transactional (VainLuku = true)



  



 yleinen pysäköintialue kuorma (Integer id) {



    



 palata em.find (Car.class, id);



  



 }





  



 @ Override



  



 säästää julkisia Car (Car car) {



    



 em.persist (char);



    



 palata auto;



  



 }





  



 @ Override



  



 update julkinen Car (Car car) {



    



 em.merge paluu (char);



  



 }





  



 public void setEm (EntityManager EM) {



    



 this.em = EM;



  



 }





  



 getEm julkinen EntityManager () {



    



 palata p;



  



 }







 }



ja lopuksi "applicationContext.xml:





 <! - CAR DAO ->







 <bean id="carDaoImpl" class="it.mrwebmaster.hibernate.dao.CarDaoImpl" />



Kuten voidaan nähdä toteuttaa DAO nost tarvitsemme EntityManager, joka ruiskutetaan suoraan meiltä "avulla KOK huomautusten @ PersistenceContext.

Toteutukset kunkin menetelmän ovat triviaaleja, yksinkertaisesti siirtää työtä all'EntityManager. Mitä transaction management, on päättänyt käyttää @ Transactional huomautusta. Tämä mahdollistaa Kevät luoda esimerkiksi meidän DAO käyttää välityspalvelinta, jonka tehtävänä on avata ja sulkea kauppa ennen kutsun menetelmään ja heti irtautumisella menetelmä itse tekee sitoutua tai palautus jos virhe.
Todettakoon lopuksi, käyttö @ Transactional varten VainLuku nell'annotation kuorman menetelmä, näin on luonut siirtyminen vain lukea.

Tämä transaction management tapahtuu käyttämällä AOP, jotta se vain lisää meidän applicazionContext.xml:






 <! - Transaction Management ->







 <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">



  



 <property name="entityManagerFactory" ref="entityManagerFactory" />







 </ Bean>







 <tx:annotation-driven transaction-manager="transactionManager" />



Kevät Java opas
E-Learning
Linux (kurssi) Linux (kurssi)
Täydellinen opas avoimen lähdekoodin järjestelmä. Alkaen 49 €.
PHP (kurssi) PHP (kurssi)
Täysi tietenkin luoda dynaamisia Web-sivustoja. Alkaen 49 €.
Ruby ja Ruby on Rails (kurssi) Ruby ja Ruby on Rails (kurssi)
Luo ohjelmistojen ja web-sovellusten kanssa Ruby ja RoR. Alkaen 39 €.
Sponsoroidut linkit