Ejb и Hibernate
Ejb vs Hibernate
Чтобы попасть в EJB, полезно понять, откуда он исходит. Существует два типа объектных компонентов. Это CMP и BMP. CMP ссылается на управляемое постоянством контейнера, в то время как BMP ссылается на контролируемое Bean Persistence. EJB специально используется для формулировки и сериализации объектов при работе с реляционными базами данных в SQL.
Когда приступает к разработке сложного приложения, оно начинается с моделирования. Классы и объекты предпочтительнее использовать по таблицам, поскольку они сопряжены со сложными взаимосвязями, которые могут вызвать множество проблем, если они не реализованы. Это по существу означает, что мы имеем дело с системой, которая использует дизайн мышления в объектах, а не в таблицах. Использование реляционных баз данных довольно быстро и проверено вовремя. Это по сравнению с сериализацией объектов экономит время, поскольку сложная сериализация объектов - очень медленный процесс. Использование технологии реляционных баз данных является быстрым и проверенным временем и популярным среди многих разработчиков, и, следовательно, причина, по которой это предпочтение.
Можно просто обрабатывать таблицы в разработке и использовать сеансовые компоненты в обработке данных и чтении данных. Насколько это возможно, его практичность невозможна, особенно при работе с действительно сложными проектами для использования вышеуказанного метода. Это основа, которая следует за использованием сущностей в EJB.
CMP в EJB1 был разработан для использования с простыми таблицами, которые не имеют сложной связи с другими таблицами. Использование CMP позволяет избежать ссылок, ссылающихся на базовую базу данных. Это на самом деле означает, что он более переносимый и блокировка поставщика не происходит. EJB 1 также сохраняет данные для объектных баз данных, кроме реляционных баз данных.
EJB 2.0 имеет революционный дизайн, который направлен на улучшение общей функциональности. Основное изменение в нем - формат, который он предлагает для написания CMP. Он обеспечивает отношения, а также предлагает использовать простой язык запросов, который называется EBJ-QL. Этот язык направлен на минимизацию сетевого трафика путем вызова компонента entity bean-компонента.
С другой стороны, Hibernate - это инструмент ORM, который не имеет крутой кривой обучения, которая является общей для EJB и не является такой же подверженной ошибкам, как EJB. Гибернация является предпочтительной благодаря своей гибкости, позволяя использовать сервлеты и JSP. Hibernate построен в соответствии со спецификацией J2EE, что делает его применимым в большинстве приложений, которые разработчик будет иметь. Hibernate - это специальный инструмент ORM, поскольку он не может использоваться только в контейнерах EJB, но также применим и в автономных контейнерах и в веб-контейнерах. Это основное отличие, которое выделяется между EJB и Hibernate. Поэтому разработка с Hibernate намного проще и менее сложна, чем использование EJB.
Hibernate, по-видимому, более популярен среди пользователей среды J2EE, и если EBJ продолжает разработку сложных функций, которые требуют времени для ознакомления пользователей, Hibernate будет доминирующим в этой области, и EJB может оказаться заблокированным из J2EE в настоящее время не поддерживает большинство разработчиков, которые стремятся ориентироваться на рынке.
Резюме
EJB - это компонент, который специально используется для формулировки объекта
Существует возможность использования таблиц и использования сессионных компонентов при чтении и обработке данных, хотя и не практичных
EBJ предоставляет относительно простой язык запросов для разработки, называемый EJB-QL
Ошибка EBJ
Hibernate относительно легко понять и реализовать
Спящий режим не относится к ошибкам как EJB