Ejb i Hibernacija
Ejb vs Hibernate
Da biste došli do EJB-a, dobro je razumjeti pozadinu odakle potječe. Postoje dvije vrste entitetskih grah. To su CMP i BMP. CMP se odnosi na kontinuiranu postojanost kontejnera, dok se BMP odnosi na trajnu uspravljenost graška. EJB se posebno koristi za formulaciju i serializaciju objekata kada se bave relacijskim bazama podataka u SQL-u.
Kada se razvija složena aplikacija, igra počinje s modeliranjem. Predmeti i predmeti su poželjni da se koriste preko stolova, budući da dolaze s kompleksnim međusobnim odnosima koji mogu uzrokovati mnogo problema ako se ne provede dobro. To u biti znači da se bavimo sustavom koji koristi dizajn razmišljanja u predmetima, a ne u tablicama. Korištenje relacijskih baza podataka vrlo je brzo i testirano na vrijeme. Ovo u usporedbi s ciljanjem objekta štedi vrijeme kao složena objektna serializacija je vrlo spor proces. Korištenje tehnologije relacijske baze podataka brzo je i vrijeme testirano i popularno među mnogim programerima, pa stoga i zbog čega je poželjno.
Moguće je da se čisti obrađuju tablice u razvoju i zapošljavaju sezonske grah u manipulaciji podacima i očitavanjem podataka. U mjeri u kojoj je to moguće, njezina praktičnost nije moguća, pogotovo kada se radi o stvarno složenim projektima kako bi se koristila gore navedena metoda. To je osnova koja slijedi korištenje entitetskih grah u EJB-u.
CMP u EJB1 napravljen je tako da bude prikladan za uporabu sa jednostavnim stolovima koji ne dolaze s kompleksnim odnosom s drugim tablicama. Korištenje CMP izbjegava reference koje se odnose na bazu podataka. To zapravo znači da je više prijenosni i zaključavanje dobavljača se ne pojavljuje. EJB 1 također zadržava podatke za baze podataka o objektima, osim relacijskih baza podataka.
EJB 2.0 je došao s revolucionarnim dizajnom koji je usmjeren na poboljšanje ukupne funkcionalnosti. Glavna promjena s njom jest format koji predlaže za pisanje CMP-a. Omogućuje odnose i također predlaže korištenje jednostavnog jezika upita koji se naziva EBJ-QL. Ovaj jezik ima za cilj minimiziranje mrežnog prometa putem zovete entitetskog graha sjedinju grah.
Hibernacija s druge strane je ORM alat koji nema strmu krivulju učenja koja je uobičajena s EJB-om i nije kao greška podložna EJB-u. Hibernacija je poželjna zbog svoje fleksibilnosti, omogućujući Servletima i JSP-u njezinu upotrebu. Hibernacija je izgrađena u skladu s J2EE specifikacijom koja ga čini primjenjivim u većini aplikacija koje programer ima. Hibernacija je poseban ORM alat jer se ne može koristiti samo u kontejnerima EJB-a, nego se također primjenjuju u samostalnim spremnicima i web kontejnerima. Ovo je glavna razlika koja se ističe između EJB i Hibernacije. Razvoj s hibernacijom stoga je mnogo lakši i manje kompliciran, za razliku od korištenja EJB-a.
Hibernacija je naizgled popularnija među korisnicima J2EE okruženja i ako EBJ nastavi s razvojem složenih značajki koje će potrajati neko vrijeme da bi korisnici upoznali, Hibernacija će biti dominantna na terenu, a EJB bi se mogao zaključiti J2EE od trenutačno nije u kontaktu s većinom programera koje nastoji ciljati na tržištu.
Sažetak
EJB je entitetski grah koji se posebno koristi za formuliranje objekta
Postoji mogućnost korištenja stolova i upotrebe sitnih grahova u čitanju i manipulaciji podataka iako nije praktično
EBJ pruža relativno jednostavan jezik upita za razvoj koji se naziva EJB-QL
EBJ pogreška sklona
Hibernacija je relativno lako razumljiva i implementirana
Hibernacija nije kao pogreška sklona kao EJB