Ejb a Hibernate

Anonim

Ejb vs Hibernate

Chcete-li se dostat na EJB, je dobré pochopit pozadí toho, odkud pochází. Existují dva typy entit fazole. Jedná se o CMP a BMP. CMP odkazuje na kontejner řízené perzistence, zatímco BMP odkazuje na Bean řízené perzistence. EJB je speciálně používán pro formulování objektů a serializaci při práci s relačními databázemi v SQL.

Když se objeví vývoj komplexní aplikace, začíná modelováním. Třídy a objekty jsou upřednostňovány pro použití nad tabulkami, jelikož přicházejí se složitými vzájemnými vztahy, které mohou způsobit spoustu problémů, pokud nejsou dobře implementovány. To v podstatě znamená, že se zabýváme systémem, který zaměstnává myšlení v objektech a ne v tabulkách. Použití relačních databází je poměrně rychlé a včas testováno. To ve srovnání se serializací objektů šetří čas, protože složitost složitých objektů je velmi pomalý proces. Použití relační databázové technologie je rychlé a časově testované a oblíbené u mnoha vývojářů, a proto je důvodem, proč je preferována.

Je možné čistě vypořádat se s tabulkami ve vývoji a zaměstnávat fazule zasedání při manipulaci s daty a čtení dat. Pokud je to možné, jeho praktičnost není možná, zvláště pokud se jedná o opravdu složité projekty k použití výše uvedené metody. Toto je základ, který následuje po použití fazule entity v EJB.

CMP v EJB1 byl navržen tak, aby byl vhodný pro použití s ​​jednoduchými tabulkami, které nesouvisí s komplexními vztahy s jinými tabulkami. Použití CMP vylučuje odkazy, které odkazují na podkladovou databázi. To ve skutečnosti znamená, že je přenosnější a zablokování dodavatele nenastane. EJB 1 přetrvává kromě objektů relačních databází dat k objektovým databázím.

EJB 2.0 přichází s revolučním designem, který je zaměřen na zlepšení celkové funkčnosti. Hlavní změnou je formát, který navrhuje pro psaní CMP. Poskytuje vztahy a také navrhuje použití jednoduchého dotazovacího jazyka, který je označován jako EBJ-QL. Tento jazyk má za cíl minimalizovat síťovou návštěvnost tím, že zavolá bean entit.

Režim spánku je na druhé straně nástroj ORM, který nemá strnující křivku učení, která je společná s EJB a není tak náchylná k chybám jako EJB. Režim hibernace je preferován díky své flexibilitě, což umožňuje službě Servlets a JSP. Hibernate je postavena v souladu se specifikací J2EE, která je použitelná ve většině aplikací, které bude mít vývojář. Hibernate je speciální nástroj ORM, protože může být použit nejen v kontejnerech EJB, ale je použitelný i v samostatných kontejnerech a kontejnerech. To je hlavní rozdíl, který vyniká mezi EJB a Hibernatem. Vývoj s Hibernatem je tedy mnohem jednodušší a méně komplikovaný oproti použití EJB.

Hibernate je zdánlivě populárnější mezi uživateli prostředí J2EE a pokud EBJ pokračuje s vývojem komplexních funkcí, které chvilku trvají, než se uživatelé seznámí, Hibernate bude dominantní v oboru a EJB by se mohla ocitnout v uzamčeném stavu J2EE od té doby není v kontaktu s většinou vývojářů, které se snaží zaměřit na trhu.

souhrn

EJB je entita fazole, která je speciálně používána pro formulaci objektů

Existuje možnost použití tabulek a použití fazule relace při čtení a manipulaci s daty, i když není praktické

EBJ poskytuje relativně jednoduchý jazyk dotazu pro vývoj označovaný jako EJB-QL

EBJ náchylná k chybám

Hibernace je poměrně snadná k pochopení a implementaci

Režim hibernace není jako chyba náchylná jako EJB