..


Sponsorētās saites

Datu piekļuves - Radīt DAO un darījumu pārvaldības

Atsaucoties uz piemēru iepriekšējā punkta, mēs redzam, kā izveidot DAO uzņēmumā Car.

Pirmkārt creaimo ar metodēm interfeisu, balstoties uz DAO, proti: slodzes, saglabāt, atjaunināt un dzēst.






 it.mrwebmaster.hibernate.dao paketi;









 it.mrwebmaster.hibernate.Car importu;









 CarDao {valsts saskarne





  



 publisko autostāvvietu slodze (Integer id);



	

  



 saglabāt sabiedrības Auto (auto car);



	

  



 update sabiedrisko Auto (auto car);



	

  



 valsts spēkā noņemt (Car auto);







 }



Created pāriet izveidi saskarnes ieviešanu:





 it.mrwebmaster.hibernate.dao paketi;









 it.mrwebmaster.hibernate.Car importu;









 javax.persistence.EntityManager importu;







 javax.persistence.PersistenceContext importu;









 org.springframework.transaction.annotation.Transactional importu;









 @ Transactional







 CarDaoImpl {valsts klases īsteno CarDao





  



 @ PersistenceContext (unitName = "pu")



  



 privātā EntityManager em;



	

  



 @ Override



  



 valsts spēkā noņemt (Car auto) {



    



 em.remove (char);



  



 }





  



 @ Override



  



 @ Transactional (tikai lasāms = true)



  



 publisko autostāvvietu slodze (Integer id) {



    



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



  



 }





  



 @ Override



  



 saglabāt sabiedrības Auto (auto auto) {



    



 em.persist (char);



    



 atgriezties automašīnu;



  



 }





  



 @ Override



  



 update sabiedrisko Auto (auto auto) {



    



 em.merge atgriešanās (char);



  



 }





  



 valsts spēkā setEm (EntityManager em) {



    



 this.em = p;



  



 }





  



 getEm valsts EntityManager () {



    



 atgriezties p;



  



 }







 }



un, visbeidzot, "applicationContext.xml:





 <-! CAR DAO ->







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



Kā redzams, lai īstenotu DAO mums Nosta EntityManager, kas tiek ievadīts tieši no mums "SOK, izmantojot anotācijas @ PersistenceContext.

Atsevišķo metožu realizācijas ir triviāla, vienkārši deleģēt darbu all'EntityManager. Attiecībā uz darījumu vadību, ir izvēlējusies izmantot @ Transactional anotācijā. Tas ļauj pavasarī, lai radītu, piemēram, mūsu DAO izmantos proxy, kuru uzdevums ir atvērt un aizvērt darījumus pirms aicinājumu metodi un uzreiz pēc "izvešana no metode pati par sevi dara izdarīt vai gadījumā atcelšanu kļūda.
Ņemiet vērā, visbeidzot, @ Transactional nell'annotation tikai lasāms, lai slodzes metode, to darot, izmantot ir radījusi pāreja tikai lasāms.

Šis darījums vadība notiek, izmantojot AOP, lai tā vienkārši pievienot mūsu applicazionContext.xml:






 <- Darījumu pārvaldības! ->







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



  



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







 </ Pupiņu>







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



Java Spring Guide
E-Learning
Linux (Kurss) Linux (Kurss)
Pilnīga rokasgrāmata atvērtā koda sistēma. Sākot no 49 €.
PHP (Kurss) PHP (Kurss)
Pilns kurss, lai radītu dinamisku tīmekļa vietnes. Sākot no 49 €.
Ruby un Ruby On Rails (Course) Ruby un Ruby On Rails (Course)
Izveide programmatūras un Web lietojumprogrammas ar Ruby un ROR. Sākot no € 39.
Sponsorētās saites