Unterschied zwischen BMP und CMP

BMP vs CMP

CMP oder Container Managed Persistence ist für Bean-Entwickler am einfachsten zu erstellen und für EJB-Server die komplizierteste Unterstützung. In CMP müssen Bean-Entwickler keine Datenzugriffslogik schreiben. Alle Anforderungen werden vom EJB-Server übernommen.

Es ist bekannt, dass BMP (Bean Managed Persistence) die Synchronisierung seines Status mit Datenbanken verwaltet, wenn der Container damit beschäftigt ist.

Für einen CMP-Bean-Entwickler müssen Sie sich nicht um JDBC-Code und -Transaktionen kümmern, da alle Datenbanken automatisch vom Container verarbeitet werden. Im Gegenteil, ein BMP-Entwickler ist für die Transaktionen und alle Datenbanken verantwortlich.

Ein weiterer Unterschied, der zwischen der Container Managed Persistence und der Bean Managed Persistence bemerkt werden kann, besteht darin, dass Ersteres die EJB-Abfragesprache verwendet. Andererseits muss ein Bean Managed Persistence-Entwickler den Datencode entweder in EJB oder in DAO schreiben. In diesem Fall ist es für den BMP-Entwickler eine größere Herausforderung als für den CMP-Entwickler.

Wenn eine Person CMP verwendet, würde sie einen komplexeren Anwendungsserver benötigen, als er für ein BMP benötigt wird.

Einige haben gesagt, dass die Bean Managed Persistence einen taktischen Ansatz bietet, während die Container Managed Persistence einen strategischeren Ansatz bietet.

In BMP kümmert sich der Entwickler um alles. Im Gegenteil, es ist der Verkäufer, der sich um alles in einem CMP kümmert. Eine weitere Sache ist, dass eine Person die Abfragen in BMP optimieren kann, da sie hart codierte Abfragen verwendet. Nun, eine Person, die CMP verwendet, kann die Leistung nicht optimieren, da der Anbieter sich um alles kümmert.

Zusammenfassung

1. Für einen CMP-Bean-Entwickler müssen Sie sich nicht um JDBC-Code und -Transaktionen kümmern, da alle Datenbanken automatisch vom Container verarbeitet werden. Auf der anderen Seite ist ein BMP-Entwickler für die Transaktionen und alle Datenbanken verantwortlich.

2. Der CMP verwendet die EJB-Abfragesprache. Ein BMP schreibt den Datencode entweder im EJB- oder im DAO-Format.

3. Bean Managed Persistence bietet einen taktischen Ansatz, während der Container Managed Persistence einen strategischeren Ansatz bietet.

4. Wenn eine Person CMP verwendet, würde sie einen komplexeren Anwendungsserver benötigen, als er für einen BMP benötigt wird.

5. In BMP kümmert sich der Entwickler um alles. Im Gegenteil, es ist der Verkäufer, der sich um alles in einem CMP kümmert.