Forskel mellem BMP og CMP Forskellen mellem

Anonim

BMP vs CMP

CMP eller Container Managed Persistence, er kendt for at være den enkleste for bønneudviklere at skabe og er kendt for at være den mest komplicerede for EJB-serverne at understøtte. I CMP er der ikke behov for bønneudviklere til at skrive nogen dataadgangslogik; alle behov er taget hånd om af EJB serveren.

BMP, eller Bean Managed Persistence, er kendt for at administrere synkronisering af dets tilstand med databaser, som involveret af containeren.

For en CMP-bønneudvikler er der ingen grund til at bekymre sig om JDBC-kode og -transaktioner, da alle databaser automatisk håndteres af containeren. Tværtimod har en BMP-udvikler ansvaret for transaktionerne og alle databaserne.

En anden forskel, der kan bemærkes mellem Container Managed Persistence og Bean Managed Persistence, er, at den tidligere bruger EJB forespørgselssprog. På den anden side skal en Bean Managed Persistence-udvikler skrive datakoden enten i EJB eller i DAO. Nå, i dette tilfælde er det mere en udfordring for BMP-udvikleren end CMP-udvikleren.

Hvis en person bruger CMP, ville de have brug for en mere sofistikeret applikationsserver end hvad der er nødvendigt for en BMP.

Nogle har sagt, at Bean Managed Persistence tilbyder en taktisk tilgang, mens Container Managed Persistence tilbyder en mere strategisk tilgang.

I BMP er det udvikleren der håndterer alt. Tværtimod er det sælgeren, der tager sig af alt i en CMP. En anden ting, der kan ses, er at en person vil være i stand til at optimere forespørgsler i BMP, da det bruger hardkodede forespørgsler. Nå, en person, der bruger CMP, kan ikke optimere ydeevnen, da det er sælgeren, der tager sig af alt.

Oversigt

1. For en CMP-bønneudvikler er der ingen grund til at bekymre sig om JDBC-kode og -transaktioner, da alle databaser automatisk håndteres af containeren. På den anden side vil en BMP-udvikler have ansvaret for transaktionerne og alle databaser.

2. CMP bruger EJB forespørgselssprog. En BMP skriver enten datakoden i EJB eller i DAO-format.

3. Bean Managed Persistence tilbyder en taktisk tilgang, mens Container Managed Persistence tilbyder en mere strategisk tilgang.

4. Hvis en person bruger CMP, ville de have brug for en mere sofistikeret applikationsserver end hvad der er nødvendigt for en BMP.

5. I BMP er det udvikleren der håndterer alt. Tværtimod er det sælgeren, der tager sig af alt i en CMP.