Diferența dintre BMP și CMP Diferența dintre

Anonim

BMP vs CMP

CMP sau Container Managed Persistența, este cunoscut a fi cel mai simplu pentru dezvoltatorii de fasole pentru a crea, și este cunoscut a fi cel mai complicat pentru serverele EJB pentru a sprijini. În CMP, nu este nevoie ca dezvoltatorii de fasole să scrie orice logică de acces la date; toate nevoile sunt preluate de serverul EJB.

BMP sau Bean Managed Persistence, este cunoscut pentru a gestiona sincronizarea stării sale cu bazele de date, așa cum sunt angajate de container.

Pentru un dezvoltator de fasole CMP, nu este nevoie să vă faceți griji cu privire la codul și tranzacțiile JDBC, deoarece toate bazele de date sunt gestionate automat de container. Dimpotrivă, un dezvoltator de BMP va avea responsabilitatea tranzacțiilor și a tuturor bazelor de date.

O altă diferență care poate fi observată între Persistența gestionată de Container și persistența gestionată de Bean este că prima folosește limba de interogare EJB. Pe de altă parte, un dezvoltator de Bean Managed Persistence trebuie să scrie codul de date fie în EJB, fie în DAO. Ei bine, în acest caz, este mai mult o provocare pentru dezvoltatorul BMP decât pentru dezvoltatorul CMP.

Dacă o persoană utilizează CMP, ar avea nevoie de un server de aplicații mai sofisticat decât ceea ce este necesar pentru un BMP.

Unii au spus că Bean Managed Persistence oferă o abordare tactică, în timp ce Containerul Managed Persistence oferă o abordare mai strategică.

În BMP, dezvoltatorul se ocupă de tot. Dimpotrivă, vânzătorul este cel care se ocupă de totul într-un CMP. Un alt lucru care poate fi văzut este că o persoană va putea să optimizeze interogările în BMP, deoarece utilizează interogări codate greu. Ei bine, o persoană care utilizează CMP nu poate optimiza performanța, deoarece este vânzătorul care are grijă de tot.

Sumar

1. Pentru un dezvoltator de fasole CMP, nu este nevoie să vă faceți griji cu privire la codul și tranzacțiile JDBC, deoarece toate bazele de date sunt gestionate automat de container. Pe de altă parte, un dezvoltator BMP va avea responsabilitatea tranzacțiilor și a tuturor bazelor de date.

2. CMP utilizează limba de interogare EJB. Un BMP scrie fie codul de date în EJB, fie în format DAO.

3. Bean Managed Persistence oferă o abordare tactică, în timp ce persistența gestionată de Container oferă o abordare mai strategică.

4. Dacă o persoană utilizează CMP, ar avea nevoie de un server de aplicații mai sofisticat decât de ceea ce este necesar pentru un BMP.

5. În BMP, dezvoltatorul este cel care gestionează totul. Dimpotrivă, vânzătorul este cel care se ocupă de totul într-un CMP.