BMP i CMP
BMP vs CMP
CMP ili Container Managed Persistence, poznato je da je najjednostavniji za stvaranje programera za grah, a poznato je da je najsloženiji za poslužitelje EJB-a za podršku. U CMP-u, nema potrebe za programerima za grah da napišu bilo koju logiku pristupa podacima; sve su potrebe zbrinute od strane EJB poslužitelja.
BMP, ili Bean Managed Persistence, poznato je da upravlja sinkronizacijom svoje države s bazama podataka, kako se bavi spremnikom.
Za razvojnog programera CMP grah, nema potrebe brinuti se o JDBC kodu i transakcijama, jer se spremnik automatski obrađuje na svim bazama podataka. Naprotiv, razvojni programer BMP-a ima odgovornost za transakcije i sve baze podataka.
Druga razlika koja se može primijetiti između Kontrole s upravljanom kontejnerom i zrcalnog uspjeha, jest da prva upotrebljava EJB jezik upita. S druge strane, razvojni programer Bean Managed Persistence mora napisati podatkovni kôd u EJB-u ili u DAO-u. Pa, u ovom slučaju, to je više izazov za razvojnog programera BMP, nego razvojni programer CMP.
Ako osoba koristi CMP, trebali bi bili sofisticiraniji aplikacijski poslužitelj, nego što je potrebno za BMP.
Neki su rekli da Uprava za održavanje kontejnera nudi taktički pristup, dok Kontrola upravljane kontejnera nudi više strateški pristup.
U BMP-u, razvojni programer rješava sve. Naprotiv, prodavatelj se brine za sve u CMP-u. Još jedna stvar koja se može vidjeti jest da će osoba moći optimizirati upite u BMP-u, budući da koristi hard-kodirane upite. Pa, osoba koja koristi CMP ne može optimizirati izvedbu, jer je prodavatelj koji brine o svemu.
Sažetak
1. Za razvojnog programera CMP grah, nema potrebe brinuti se o JDBC kodu i transakcijama jer se spremnik automatski obrađuje na svim bazama podataka. S druge strane, razvojni programer BMP-a će imati odgovornost za transakcije i sve baze podataka.
2. CMP koristi jezik upita EJB-a. BMP ili zapisuje podatkovni kod u EJB, ili u DAO formatu.
3. Bean Managed Persistence nudi taktički pristup, dok Kontrolirano održavanje kontejnera nudi više strateški pristup.
4. Ako osoba koristi CMP, trebali bi bili sofisticiraniji aplikacijski poslužitelji nego što je potrebno za BMP.
5. U BMP-u, razvojni programer rješava sve. Naprotiv, prodavatelj se brine za sve u CMP-u.