2-Hibernate_ Architecture

ال Hibernate architecture متقسمة لمجموعة من الطبقات بحيث انها تخليك بيعد تماما عن اي API هي بتستخدمها وده الشكل العام لها

 Persistent Object:: 

هو عباره عن Object او Instance من POJO (Plain Old Java Object) اللي بتمثل ال rows في ال DB وهو  في حالة Synchronize مستمرة طالما في عملية علي الDB


ال Hibernate بتستخدم Objects كتيره علشان يخزن البيانات وكمان بيستخدم مجموهة APIs لتسهيل التعامل زي
JDBC وده بيوفرله مستوي جيد من التعامل مع قواعد البيانات من تخزين وتعديل

اما ال JNDI(Java Naming and Directory Interface) & JTA(Java Transaction API)  بيسمحوله انه يعمل Integration  مع اي J2EE Servers

اما عن ال Objects الخاصة بال Hibernate

1- Session Factory  :

بنستخدم ال Configuration object علشان ننشئه وبستخدمه لكي انشئ ال Session object
وهو عبارة عن Thread safe بنشئه مرة واحدة لكل DB في بداية التطبيق اي انه اذا كنا بنتعامل مع اكتر من DB هنعمل منه واحد لكل DB
 private static final SessionFactory factory;
sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory

2-Session 

وده ال Object  اللي بيسمحلك تتعامل مع ال DB  وهو short-lived  يعني له وقت معين وينتهي ولانه مش امن انك تسيبه مفتوح يجب اني destroy او close عند انتهاء التعامل معه 

3- Transaction Object 

 من اسمه هو اللي بيقوم بالعمليات علي ال DB  مع ال Session 

Session session =   factory.openSession();                                       n    
      Transaction tx = null;                                                     l   

 tx = session.beginTransaction();                                               n
Employee employee = new Employee(fname, lname, salary);                         y  
         employeeID = (Integer) session.save(employee);                         e   
         tx.commit();                                                           t


ودول يعتبرو اهم Objects    هنتعامل معها وكل شئ هيوضح بالامثلة



Previous
Next Post »