Корпоративные компоненты Java (EJB)
Enterprise Java Beans (EJB) - один из нескольких API Java для стандартного производства корпоративного программного обеспечения. EJB - это программный элемент на стороне сервера, который обобщает бизнес-логику приложения. Веб-репозиторий Enterprise Java Beans представляет собой среду выполнения для связанных с сетью элементов программного обеспечения, включая надежность компьютера, управление жизненным циклом сервлетов Java (JSL), процедуру транзакции и другие веб-службы. Перечисление EJB является подмножеством перечисления Java EE.
Перечисление EJB было первоначально разработано IBM в 1997 году, а затем принято Sun Microsystems в 1999 году и расширено в рамках процесса сообщества Java.
Перечисление EJB нацелено на предоставление стандартного способа реализации серверного бизнес-программного обеспечения, которое обычно встречается в корпоративных приложениях. Такой машинный код решает одни и те же типы проблем, и решения этих проблем часто повторно реализуются программистами. Предполагается, что Enterprise Java Beans решает такие общие проблемы, как надежность, надежность транзакций и безопасность стандартным способом, который дает программистам возможность сосредоточиться на конкретных частях имеющегося корпоративного программного обеспечения.
Для запуска приложения EJB нам нужен сервер приложений (контейнер EJB), такой как Jboss, Glassfish, Weblogic, Websphere и т. Д. Он выполняет:
1. Управление жизненным циклом
2. Безопасность
3. Управление транзакциями
4. Объединение объектов
Типы корпоративных Java-компонентов
Есть три типа EJB:
1. Сессионный компонент: Сессионный компонент содержит бизнес-логику, которая может быть вызвана локальным, удаленным клиентом или клиентом веб-службы. Существует два типа сессионных компонентов: (i) сессионный компонент с сохранением состояния и (ii) сеансовый компонент без сохранения состояния.
- (i) Сессионный компонент с отслеживанием состояния:
Сессионный компонент с сохранением состояния выполняет бизнес-задачу с помощью состояния. Сессионный компонент с сохранением состояния может использоваться для доступа к различным вызовам методов, сохраняя информацию в переменной экземпляра. Некоторым приложениям требуется, чтобы информация сохранялась через отдельные вызовы методов. На сайте покупок элементы, выбранные покупателем, должны храниться, поскольку данные являются примером сессионного компонента с отслеживанием состояния. - (ii) Сессионный компонент без сохранения состояния:
Сессионный компонент без сохранения состояния реализует бизнес-логику без постоянного механизма хранения, такого как состояние или база данных, и может использовать общие данные. Сессионный компонент без сохранения состояния может использоваться в ситуациях, когда информация не требуется для использования в методах вызова.
2. Компонент, управляемый сообщениями: как и сеансовый компонент, он содержит бизнес-логику, но вызывается при передаче сообщения.
3. Entity Bean: он суммирует состояние, которое может оставаться в базе данных. Это устарело. Теперь он заменен на JPA (Java Persistent API). Есть два типа entity-компонента:
- (i) Сохраняемость, управляемая компонентами:
В объектном компоненте с управляемым типом персистентности программист должен написать код для вызовов базы данных. Он сохраняется в течение нескольких сеансов и нескольких клиентов. - (ii) Постоянство, управляемое контейнером:
Постоянство, управляемое контейнером, - это корпоративный компонент, который сохраняется в базе данных. При сохранении, управляемом контейнером, контейнер заботится о вызовах базы данных.
Когда использовать Enterprise Java Beans
1. Приложению требуется удаленный доступ. Другими словами, он распространяется.
2. Приложение должно быть масштабируемым. Приложения EJB поддерживают балансировку нагрузки, кластеризацию и отказоустойчивость.
3. Приложение требует инкапсулированной бизнес-логики. Приложение EJB отличается от демонстрационного и постоянного уровня.
Преимущества корпоративных Java Beans
1. Репозиторий EJB предоставляет корпоративным компонентам сервисы системного уровня, разработчик компонентов может сосредоточиться на решении бизнес-задач. Репозиторий EJB отвечает за такие сервисы системного уровня, как управление транзакциями и авторизация безопасности, а не разработчик bean-компонентов.
2. Компоненты, а не клиенты, содержат бизнес-логику приложения, разработчик клиента может сосредоточиться на представлении клиента. Разработчик клиента не должен кодировать шаблон, который выполняет бизнес-правила или обращается к базам данных. Благодаря этому клиенты становятся тоньше, что особенно важно для клиентов, работающих на небольших устройствах.
3. Компоненты Enterprise Java Beans - это переносимые элементы, ассемблер приложений может создавать новые приложения из уже существующих компонентов.
Недостатки Enterprise Java Beans
1. Требуется сервер приложений.
2. Требуется только java-клиент. Для клиента на другом языке вам нужно перейти на веб-сервис.
3. Сложные для понимания и разработки приложений EJB.
Вниманию читателя! Не переставай учиться сейчас. Ознакомьтесь со всеми важными концепциями Java Foundation и коллекций с помощью курса "Основы Java и Java Collections" по доступной для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .