Razlika med BMP in CMP

BMP proti CMP

Znano je, da je CMP ali Container Managed Persistence najpreprostejši za ustvarjalce fižola in najzahtevnejši za podporo strežnikov EJB. V CMP razvijalci fižol ne potrebujejo, da napišejo kakršno koli logiko dostopa do podatkov; za vse potrebe skrbi strežnik EJB.

Znano je, da BMP ali Bean Managed Persistence upravlja s sinhronizacijo svojega stanja z bazami podatkov, kot ga uporablja vsebnik.

Za razvijalca CMP fižol ni treba skrbeti za kodo JDBC in transakcije, saj vsebnik samodejno upravlja z vsemi bazami podatkov. Nasprotno, razvijalec BMP bo odgovoren za transakcije in vse baze podatkov.

Druga razlika, ki jo je mogoče opaziti med Container Managed Persistence in Bean Managed Persistence, je, da prva uporablja poizvedbeni jezik EJB. Po drugi strani mora razvijalec Bean Managed Persistence vpisati podatkovno kodo bodisi v EJB bodisi v DAO. No, v tem primeru je razvijalcu BMP bolj izziv kot za razvijalca CMP.

Če oseba uporablja CMP, bi potrebovala bolj izpopolnjen aplikacijski strežnik, kot je tisto, kar je potrebno za BMP.

Nekateri pravijo, da Bean Managed Persistence ponuja taktičen pristop, medtem ko vztrajanje z zabojniki ponuja bolj strateški pristop.

Pri BMP je razvijalec tisti, ki upravlja vse. Nasprotno, prodajalec je tisti, ki skrbi za vse v CMP. Še nekaj, kar je vidno, je, da bo človek lahko optimiziral poizvedbe v BMP, saj uporablja težko kodirane poizvedbe. No, oseba, ki uporablja CMP, ne more izboljšati učinkovitosti, saj za vse poskrbi prodajalec.

Povzetek

1. Za razvijalca CMP fižol ni treba skrbeti za kodo JDBC in transakcije, saj vsebnik samodejno upravlja z vsemi bazami podatkov. Po drugi strani bo razvijalci BMP odgovoren za transakcije in vse baze podatkov.

2. CMP uporablja poizvedbeni jezik EJB. BMP zapisuje podatkovno kodo v obliki EJB ali v formatu DAO.

3. Bean Managed Persistence ponuja taktičen pristop, medtem ko Container Managed Persistence ponuja bolj strateški pristop.

4. Če oseba uporablja CMP, potrebuje bolj izpopolnjen strežnik aplikacij od tistega, ki je potreben za BMP.

5. Pri BMP je razvijalec tisti, ki upravlja vse. Nasprotno, prodajalec je tisti, ki skrbi za vse v CMP.