Подтвердить что ты не робот

Разница между Java Bean и Enterprise Java Beans?

Являются ли они разными или они используются взаимозаменяемо? Если они различны, то что отличает их друг от друга?

4b9b3361

Ответ 1

JavaBean - это просто старый Java-объект, который соответствует определенным соглашениям, включая использование функций доступа (getFoo/setFoo) для доступа к члену, предоставление конструктора по умолчанию и некоторые другие подобные вещи.

Enterprise JavaBean является компонентом на сервере приложений Java EE, который поставляется в нескольких вариантах, детали которых зависят от той версии Java EE, о которой вы говорите (или, более конкретно, какой конкретный набор спецификаций EJB участие).

JavaBeans изначально в основном предназначались для использования в инструментах-конструкторах, предоставляя известный интерфейс, который можно было бы искать с помощью интроспекции в инструментах. Однако они быстро превратились в то, что составляет религию.

Enterprise JavaBeans предназначены для обеспечения инкапсулированной бизнес-логики для корпоративных приложений в общем контейнере, который предоставляет такие функции, как управление сеансом, безопасность, объединение ресурсов и т.д. в качестве сервисов, что позволяет бизнес-логике (относительно) заботящихся о заботе (Независимо от того, достигли они или нет, это вопрос, который необходимо обсудить, учитывая, насколько сложно было использовать его вначале. Однако более поздние версии спецификации сделали это проще, но устаревшие приложения по-прежнему остаются больно и печально вероятно, большинство EJB, с которыми вы, вероятно, столкнетесь.)


Отредактировано для добавления:

Ответ 2

Java Bean определяется как экземпляр класса, который содержит частные атрибуты (данные), методы getter и setter.

Если у вас есть:

private String myString; в вашем классе вы должны иметь методы public String getMyString(); и public void setMyString (String settingString); определенных в вашем коде. Хотя, я обнаружил, что совершенно не обязательно иметь все, что определено; просто не удивляйтесь, если что-то сломается!

EJB (Enterprise Java Bean) намного сложнее. Они находятся только на серверах приложений, которые обрабатывают EJB (Tomcat не поддерживает EJB). Существует 3 типа EJB:

  • Сессия: обычно содержат некоторую бизнес-логику.
  • Сущность: обычно интерфейс с хранилищем данных (например, база данных).
  • Message-Driven: получает сообщения от JMS.

Ответ 3

Java beans относится к классам с только полями и их методами-установщиками. С небольшой или предпочтительно никакой бизнес-логикой вообще. Они также известны как POJO (обычный старый объект Java).

EJB являются частью спецификации J2EE, которая может использоваться для обеспечения полной функциональности совместимых с J2EE серверов, таких как транзакции, управление сеансом, безопасность и т.д. (это не означает, что вы не можете использовать их без использования EJB)

Ответ 4

"Java Beans" используются для хранения данных извлеченных данных из базы данных и используются в качестве контейнера для переноса данных между сервлетами и JSP в модели MVC. Класс (контейнер) с сеттерами и геттерами используется для (put) и (получения) данных.

"Enterprise Java Beans" похожи на "Java Beans" с добавленными функциями, такими как Управление сеансом, безопасность, транзакция и т.д. с помощь различных типов EJB, которые находятся на

  1. Сессия Bean   
  2. Entity Bean    
  3. Message Driven Beans