Diferencia entre BMP y CMP

BMP vs CMP

Se sabe que CMP, o Container Managed Persistence, es la forma más simple de crear para los desarrolladores de beans y es la más complicada para los servidores EJB. En CMP, no hay necesidad de que los desarrolladores de beans escriban ninguna lógica de acceso a datos; Todas las necesidades son atendidas por el servidor EJB..

Se sabe que BMP, o Bean Managed Persistence, gestiona la sincronización de su estado con las bases de datos, según lo comprometido por el contenedor.

Para un desarrollador de beans CMP, no hay necesidad de preocuparse por el código JDBC y las transacciones, ya que todas las bases de datos son manejadas automáticamente por el contenedor. Por el contrario, un desarrollador de BMP será responsable de las transacciones y de todas las bases de datos..

Otra diferencia que se puede notar entre la persistencia administrada por contenedor y la persistencia administrada por bean, es que la primera utiliza el lenguaje de consulta EJB. Por otro lado, un desarrollador de Bean Managed Persistence tiene que escribir el código de datos en EJB o en DAO. Bueno, en este caso, es más un desafío para el desarrollador de BMP que para el desarrollador de CMP..

Si una persona está usando CMP, necesitaría un servidor de aplicaciones más sofisticado, que lo que se necesita para un BMP.

Algunos han dicho que el Bean Managed Persistence ofrece un enfoque táctico, mientras que el Container Managed Persistence ofrece un enfoque más estratégico..

En BMP, es el desarrollador quien se encarga de todo. Por el contrario, es el proveedor quien se encarga de todo en un CMP. Otra cosa que se puede ver es que una persona podrá optimizar las consultas en BMP, ya que utiliza consultas codificadas. Bueno, una persona que usa CMP no puede optimizar el rendimiento, ya que es el proveedor quien se encarga de todo..

Resumen

1. Para un desarrollador de beans CMP, no hay necesidad de preocuparse por el código JDBC y las transacciones, ya que todas las bases de datos son manejadas automáticamente por el contenedor. Por otro lado, un desarrollador de BMP será responsable de las transacciones y de todas las bases de datos..

2. El CMP usa el lenguaje de consulta EJB. Un BMP escribe el código de datos en EJB, o en formato DAO.

3. Bean Managed Persistence ofrece un enfoque táctico, mientras que Container Managed Persistence ofrece un enfoque más estratégico..

4. Si una persona está utilizando CMP, necesitaría un servidor de aplicaciones más sofisticado, que el necesario para un BMP..

5. En BMP, es el desarrollador quien se encarga de todo. Por el contrario, es el vendedor quien se encarga de todo en un CMP..