logo

Що таке EJB

EJB - це абревіатура від корпоративний java bean . Це специфікація, надана Sun Microsystems для розробки захищених, надійних і масштабованих розподілених програм.

Щоб отримати інформацію про розповсюджені програми, відвідайте Підручник RMI перший.

Щоб запустити програму EJB, вам потрібен сервер додатків (EJB Container), наприклад Jboss, Glassfish, Weblogic, Websphere тощо. Він виконує:

  1. управління життєвим циклом,
  2. безпека,
  3. управління транзакціями та
  4. об'єднання об'єктів.

Додаток EJB розгортається на сервері, тому його також називають серверним компонентом.

EJB схожий на COM ( Компонентна об'єктна модель ) надається Microsoft. Але він відрізняється від Java Bean, RMI та веб-служб.


Коли використовувати Enterprise Java Bean?

  1. Додатку потрібен віддалений доступ . Іншими словами, воно розподілене.
  2. Додаток має бути масштабованим . Програми EJB підтримують балансування навантаження, кластеризацію та відновлення після відмови.
  3. Додатку потрібна інкапсульована бізнес-логіка . Програма EJB відокремлена від рівня презентації та постійного рівня.

Типи Enterprise Java Bean

У Java існує 3 типи корпоративних компонентів.

Session Bean

Компонент сеансу містить бізнес-логіку, яка може бути викликана локальним, віддаленим клієнтом або клієнтом веб-служби.

Компонент, керований повідомленнями

Як і Session Bean, він містить бізнес-логіку, але викликається шляхом передачі повідомлення.

Entity Bean

Він інкапсулює стан, який можна зберегти в базі даних. Це застаріле. Тепер його замінено на JPA (Java Persistent API).


Різниця між RMI та EJB

І RMI, і EJB надають послуги для доступу до об’єкта, що працює в іншій JVM (відомий як віддалений об’єкт) з іншої JVM. Відмінності між RMI та EJB наведені нижче:

RMIEJB
У RMI такі послуги проміжного програмного забезпечення, як безпека, керування транзакціями, об’єднання об’єктів тощо, має виконувати програміст Java.У EJB служби проміжного програмного забезпечення надаються EJB Container автоматично.
RMI не є серверним компонентом. Його не потрібно розгортати на сервері.EJB — це серверний компонент, його потрібно розгортати на сервері.
RMI побудовано на вершині програмування сокетів.Технологія EJB побудована на основі RMI.

EJB і веб-сервіс

В EJB і компонент компонента, і клієнт компонента повинні бути написані мовою Java.

Якщо клієнт bean потрібно написати іншою мовою, наприклад .net , php тощо, ми повинні піти з веб-сервіси (мило чи відпочинок). Тож EJB із веб-службою буде кращим варіантом.


Недоліки EJB

  1. Потрібен сервер додатків
  2. Потрібен лише клієнт Java. Для іншого мовного клієнта вам потрібно скористатися веб-службою.
  3. Комплекс для розуміння та розробки програм ejb.