Skirtumas Tarp EJB2 Ir EJB3

Skirtumas Tarp EJB2 Ir EJB3
Skirtumas Tarp EJB2 Ir EJB3

Video: Skirtumas Tarp EJB2 Ir EJB3

Video: Skirtumas Tarp EJB2 Ir EJB3
Video: Java EE 123: EJB 1: Что такое EJB 2024, Balandis
Anonim

EJB2 ir EJB3

EJB („Enterprise JavaBeans“) yra „Java API“(„Application Programming Interface“), esanti „Java EE“(„Java Platform“, „Enterprise Edition“) specifikacijose. EJB apibūdina įmonės programų kūrimo architektūrinį modelį. Tai yra valdomas serverio modelis, galintis užfiksuoti įmonės programos verslo logiką. „IBM“yra originalus EJB kūrėjas, kuris jį sukūrė 1997 m. „Sun Microsystems“priėmė 1999 m.

Prieš įvedant EJB, buvo nustatyta, kad programuotojai dažnai iš naujo įgyvendino problemų, esančių vidiniame verslo kode, sprendimus. Todėl EJB buvo įsteigtas spręsti šias bendras problemas, tokias kaip atkaklumas, sandorių vientisumas ir saugumas. EJB pateikia standartinius būdus, kaip spręsti šias galines problemas, nurodant, kaip programų serveris turėtų apdoroti operacijas, integruotis su JPA („Java Persistence API“) paslaugomis, tvarkyti sutampamumo valdymą, tvarkyti JMS („Java“žinučių tarnybos) įvykius, išspręsti pavadinimo problemas naudojant JNDI („Java Naming and Directory Interface“), kurkite saugias programas naudodami JCE („Java“kriptografijos plėtinys) ir JAAS („Java“autentifikavimo ir autorizavimo tarnyba), diegite komponentus, bendraukite nuotoliniu būdu su „RMI-IIOP“(„Java Remote Method Invoking“sąsaja per interneto „Inter-Orb“protokolą),kurti žiniatinklio paslaugas, pasinaudoti asinchroniniais metodais ir naudotis „Timer“paslauga.

EJB2

EJB2 (EJB 2.0) buvo išleistas 2001 m. Rugpjūčio 22 d. Jame aprašomos paskirstytų objektinių programų „Java“kūrimo specifikacijos, derinant skirtingų tiekėjų sukurtus įrankius. Vienas iš pagrindinių „EJB2“tikslų buvo leisti programuotojams lengviau kurti įmonės programas, nesuprantant žemo lygio detalių, tokių kaip kelių gijų sujungimas ir jungčių sujungimas. Kitas tikslas buvo leisti programuotojams vieną kartą parašyti „Pupelę“ir bėgti bet kur be kompiliavimo (laikantis „Java“programavimo kalbos šūkio „rašyk vieną kartą, bėk bet kur“). Be to, EJB2 tikslas buvo leisti skirtingų tiekėjų sukurtiems komponentams lengvai sąveikauti ir leisti pardavėjams rašyti savo produktų plėtinius, galinčius palaikyti EJB.

EJB3

EJB3 (EJB 3.0) buvo išleistas 2006 m. Gegužės 11 d. EJB3 yra verslo sąsaja ir konkretus subjekto elementas, kuris gali įdiegti tą verslo sąsają, todėl nebereikia naudoti namų / nuotolinių sąsajų ir failo „ejb-jar.xml“. Bendras EJB3 veikimas yra žymiai geresnis, palyginti su EJB2, ir šiame EJB leidime žymiai padidėja konfigūruojamumas, lankstumas ir perkeliamumas.

Kuo skiriasi EJB2 ir EJB3?

EJB3 pastebimai pagerino konfigūraciją ir našumą, palyginti su EJB2. Viena iš šio našumo patobulinimų priežasčių yra POJO (paprastas senas „Java“objektas) naudojimas su metaduomenimis ir XML diegimo aprašais, kuriuos pateikė EJB3, o ne JNDI peržvalgos, naudojamos EJB2 objektų nuorodoms. EJB3 konfigūravimas yra daug paprastesnis, nes programuotojui nereikia įdiegti namų / nuotolinių sąsajų ir kitų (pvz., „SessionBean“), todėl nebereikia naudoti konteinerio atgalinio skambinimo metodų (tokių kaip „ejbActivate“ir „ejbStore“).

Be to, EJB3 yra geresnis nei EJB2 lankstumo ir perkeliamumo srityse. Pavyzdžiui, lengva konvertuoti EJB3 objektus į DAO (duomenų prieigos objektą) ir atvirkščiai, nes EJB3 objektai yra lengvi (priešingai nei sunkiasvoriai EJB2 objektai, kurie įgyvendina aukščiau minėtas sąsajas). Duomenų bazių užklausos, parašytos EJB3, yra labai lanksčios, nes vietoj senesnės versijos EJB-QL naudojama rafinuota EJB-QL, kuri turėjo keletą apribojimų. „EJB3“pašalina visas „EJB2“(kuri prieigai prie duomenų bazės naudoja objekto pupeles) perkeliamumo problemas, palaikydama labiau apibendrintą JPA visoms duomenų operacijoms.

Skirtingai nuo EJB2, kuriai vykdyti reikalingas EJB konteineris, EJB3 galima vykdyti nepriklausomoje JVM („Java Virtual Machine“), nenaudojant konteinerių (tai įmanoma, nes jame neįdiegtos standartinės sąsajos). Skirtingai nuo EJB2, EJB3 galima lengvai prijungti prie trečiųjų šalių siūlomų patvarumo teikėjų. Kitas svarbus skirtumas tarp EJB3 ir EJB2 yra tas, kad EJB3 gali naudoti anotacijomis pagrįstą saugumą, o EJB2 - diegimo aprašais pagrįstą saugumą. Tai reiškia, kad konfigūravimo ir sąrankos užduotys yra daug lengvesnės naudojant EJB3, o veikimo pridėtinės išlaidos žymiai sumažėja, palyginti su EJB2.

Rekomenduojama: