Перейти к содержимому

Разница между BMP и CMP

    BMP против CMP

    CMP, или Container Managed Persistence, известен как самый простой для разработчиков бобов и самый сложный для поддержки серверами EJB. В CMP разработчикам бобов не нужно писать логику доступа к данным; обо всем позаботится сервер EJB.

    BMP, или Bean Managed Persistence, как известно, управляет синхронизацией своего состояния с базами данных по команде контейнера.

    Разработчику CMP-бобов не нужно беспокоиться о коде JDBC и транзакциях, поскольку все базы данных автоматически обрабатываются контейнером. Напротив, разработчик BMP будет нести ответственность за транзакции и все базы данных.

    Еще одно различие, которое можно заметить между Container Managed Persistence и Bean Managed Persistence, заключается в том, что первый использует язык запросов EJB. С другой стороны, разработчик Bean Managed Persistence должен писать код данных либо на EJB, либо на DAO. Что ж, в данном случае это скорее вызов для разработчика BMP, чем для разработчика CMP.

    Если человек использует CMP, ему потребуется более сложный сервер приложений, чем тот, что нужен для BMP.

    Некоторые говорят, что Bean Managed Persistence предлагает тактический подход, в то время как Container Managed Persistence предлагает более стратегический подход.

    В BMP всем занимается разработчик. Напротив, в CMP обо всем заботится поставщик. Еще один момент, который можно заметить, заключается в том, что человек сможет оптимизировать запросы в BMP, поскольку в нем используются жестко закодированные запросы. Человек, использующий CMP, не сможет оптимизировать производительность, так как обо всем позаботится поставщик.

    Резюме

    1. Для разработчика бобов CMP нет необходимости беспокоиться о коде JDBC и транзакциях, так как все базы данных автоматически обрабатываются контейнером. С другой стороны, разработчик BMP будет нести ответственность за транзакции и все базы данных.

    2. CMP использует язык запросов EJB. BMP либо пишет код данных в EJB, либо в формате DAO.

    3. Bean Managed Persistence предлагает тактический подход, в то время как Container Managed Persistence предлагает более стратегический подход.

    4. Если человек использует CMP, ему потребуется более сложный сервер приложений, чем тот, который необходим для BMP.

    5. В BMP всем занимается разработчик. Напротив, в CMP обо всем заботится поставщик.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Adblock
    detector