Rozdiel medzi ejb 2.0 a ejb 3.0

ejb 2.0 vs ejb 3.0

Ejb 2.0 aj ejb3.0 sú verziou Enterprise Java Beans (EJB), ktorá má veľkú popularitu pre svoju spravovanú architektúru na strane servera pre modulárnu konštrukciu podnikových aplikácií. ejb2.0 a ejb3.0 slúžia svojim používateľom rovnakým spôsobom, ale ústredným bodom EJB 3.0 je to, že zjednodušilo život vývojárov v porovnaní s ejb2.0. ejb 2.0 je navrhnutý v rámci JCP (Java Community Process), umožňuje architektúre EJB uľahčiť implementáciu a nasadenie aplikácií webových služieb založených na technológii Java. Na druhej strane, ejb 3.0 poskytuje základ pre definovanie nového zjednodušeného EJB API, ktoré uľahčujú vývoj. Jeho ďalšou funkciou je nové rozhranie Java Persistence API pre správu perzistencie a mapovanie objektov / vzťahov s Java EE a Java SE.

ejb 2.0 používa na prístup do databázy fazuľky entít, ale ejb 3.0 podporuje Java Persistence API pre všetky jeho dátové potreby, ktoré sú dostatočne všeobecné na to, aby riešili všetky problémy s prenosnosťou. ejb 3.0 má lepšiu výkonnosť tak, že používa POJO s novo zavedenou anotáciou metadát, ktorá je porovnateľne rýchlejšia ako súbory XMLDescriptor a JNDI, ktoré používa ejb 2.0 na referencie na objekty.

ejb 2.0 má veľkú váhu, pokiaľ ide o jeho požiadavku na písanie domácich a vzdialených rozhraní a tiež na vykonávanie štandardných rozhraní, ako je javax.ejb.SessionBean. ejb 3.0 nemá obmedzenia na používanie štandardných rozhraní. Je to jednoduchý a dobre nakonfigurovaný POJO, ktorý nevyžaduje implementáciu metód spätného volania kontajnerov, ako sú ejbActivate, ejbLoad, ejbStore atď. Subjekty POJO ako EJB 3.0 sú ľahké a bez námahy prevádzať z DAO na fazuľu entít alebo naopak..

ejb 2.0 má obmedzenia a nepružnosť pre písanie databázových dotazov pomocou EJB-QL, zatiaľ čo ejb 3.0 uľahčuje rafinované EJB-QL, a preto sú napísané databázové dotazy veľmi flexibilné.

Zabezpečenie je poskytované v ejb 2.0 pomocou deskriptorov nasadenia. EJB3.0 používa anotácie na zjednodušenie konfiguračných a nastavovacích úloh pre problémy so zabezpečením. ejb 3.0 sa dá ľahko použiť s pripojiteľnými poskytovateľmi perzistencie, ale ejb 2.0 má v tomto ohľade obmedzenia.

Zhrnutie:
1. ejb 2.0 používa entitu Beans na prístup do databáz, ale ejb3.0 používa JPA na prístup do databázy.
2. ejb.0 vyžaduje opis nasadenia, ale pri používaní ejb3.0 sa nevyžaduje opis nasadenia.
3. V ejb 2.0 musíme napísať Home a Remote interface, aby sme mali prístup k databázam, zatiaľ čo ejb3.0 nemá také obmedzenia a je v tomto ohľade pohodlnejšia.
4. Problémy s bezpečnosťou sa riešia pomocou deskriptorov nasadenia v ejb2.0, ale ejb3.0 používa anotáciu.
5. ejb 2.0 má vo svojej prepojiteľnosti s poskytovateľmi perzistencie vytrvalosti obmedzenia.
6. V ejb3.0 je Query veľmi flexibilný a prostredníctvom prepracovaného EJB-QL je povolených niekoľko úrovní spojení..