Differenza tra ejb 2. 0 e ejb 3. 0 Differenza tra

Anonim

ejb 2. 0 vs ejb 3. 0

Entrambi ejb 2. 0 e ejb3. 0 è la versione di Enterprise Java Beans (EJB) che gode di ampia popolarità per la sua architettura gestita lato server per la costruzione modulare di applicazioni aziendali. EJB2. 0 ed ejb3. 0 servono entrambi i suoi utenti allo stesso modo, ma il punto centrale su EJB 3. 0 è che ha semplificato la vita degli sviluppatori rispetto a ejb2. 0. ejb 2. 0 è progettato sotto il JCP (Java Community Process), consente all'architettura EJB di semplificare l'implementazione e l'implementazione di applicazioni di servizi Web basate sulla tecnologia Java. D'altra parte, ejb 3. 0 fornisce una base per definire la nuova API EJB semplificata che facilita lo sviluppo. La sua funzione aggiuntiva è la nuova API Java Persistence per la gestione della persistenza e del mapping oggetto / relazionale con Java EE e Java SE.

ejb 2. 0 utilizza bean di entità per accedere al database ma ejb 3. 0 supporta Java Persistence API per tutte le sue esigenze di dati che è abbastanza generalizzato per affrontare tutti i problemi di portabilità. ejb 3. 0 è migliore nelle prestazioni in quanto utilizza POJO con annotazioni di metadati di nuova introduzione che è comparativamente più veloce dei file XMLDescriptor e JNDI Utilizzato da ejb 2. 0 per il riferimento all'oggetto.

ejb 2. 0 è pesante in termini di necessità di scrivere interfacce domestiche e remote e di eseguire anche interfacce standard come javax. EJB. SessionBean. ejb 3. 0 non ha la restrizione per utilizzare qualsiasi interfaccia standard. È un POJO semplice e ben configurato che non ha bisogno di implementare metodi di callback del contenitore come ejbActivate, ejbLoad, ejbStore ecc. POJO come EJB 3. 0 entità sono leggere ed è facile convertire da un DAO a un bean Entity o viceversa.

ejb 2. 0 ha la limitazione e l'inflessibilità per scrivere query di database usando EJB-QL mentre ejb 3. 0 sta facilitando con EJB-QL raffinato e quindi le query di database scritte sono molto flessibili.

La sicurezza viene fornita in ejb 2. 0 attraverso l'uso di descrittori di distribuzione. EJB3. 0 utilizza annotazioni per semplificare le attività di configurazione e configurazione per problemi di sicurezza. ejb 3. 0 può essere facilmente utilizzato con i provider di persistenza plug-in di terze parti ma ejb 2. 0 presenta limitazioni in questo senso.

Riepilogo:

1. ejb 2. 0 utilizza l'entità Beans per accedere ai database ma ejb3. 0 usa JPA per accedere al database.

2. EJB. 0 richiede la descrizione della distribuzione ma non vi è alcun obbligo di descrizione della distribuzione durante l'utilizzo di ejb3. 0.

3. In ejb 2. 0, dobbiamo scrivere l'interfaccia Home e Remote per avere accesso ai database mentre ejb3. 0 non ha tale vincolo ed è più conveniente in questo senso.

4.I problemi di sicurezza vengono gestiti tramite descrittori di distribuzione in ejb2. 0 ma ejb3. 0 sta usando l'annotazione.

5. ejb 2. 0 ha limitazioni nella sua connettività con i fornitori di persistenza di terze parti.

6. In ejb3. 0, Query è molto flessibile e diversi livelli di join sono abilitati attraverso il raffinato EJB-QL.