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

Разница между jsf beans и ejb beans

Мне нужно уточнение. Я знаю, как работать с JSF и его соответствующей сессией beans, но меня путают с EJB. В чем разница между beans, введенным с EJB, и сеансом beans, используемым с JSF (для ejb я знаю о сеансе безстоящего/полного beans и сущности beans, диспетчера сущностей и т.д.). То, что я просто не получаю, - это когда использовать EJB и когда использовать jsf beans. Помимо сущности beans обе сессии с состоянием/отсутствием ejb beans кажутся похожими на сеанс jsf beans. Я читал об инъекции ejb в jsf, но почему бы просто не использовать ejb в сочетании с jsf beans? Надеюсь, вы поймете мое замешательство. Спасибо.

4b9b3361

Ответ 1

В Java EE существует определенная путаница между различными типами управляемых beans. Чтобы добавить к путанице, Java EE 6 представила третий вид управляемого bean: CDI bean.

В этом ответе я попытаюсь немного объяснить различия и сходства: Как сравнить CDI и EJB? взаимодействовать?

Короче говоря, JSF, управляемый beans, главным образом, не предлагает поддержку транзакций, что вам часто нужно при работе с бизнес-логикой и особенно с JPA.

Также обратите внимание, что термин session, как в управляемом сеансе с управляемым beans, является совершенно другим типом сеанса, чем тот, на который ссылается термин в безстоящем и statefull сеансе beans.

Ответ 2

Алексис

Сначала вам нужно знать разницу между JSF bean и EJB beans.

JSF Bean: JSF beans - это классы pojo, которые использовали для чтения значения компонента jsf. существует два типа beans в jsf

Управляемый bean - это о том, как создается и инициализируется java bean. Как вы знаете, jsf использует ленивую модель инициализации. Это означает, что bean в конкретной области создается и инициализируется не в тот момент, когда область запуска запущена, а по требованию, то есть когда требуется bean.

Резервное копирование bean - это роль, которую играет определенная управляемая игра bean. Это роль серверного представления компонентов, расположенных на странице. Обычно поддержка beans имеет область запроса, но это не ограничение.

EJB bean является серверным компонентом, который инкапсулирует бизнес-логику приложения. Бизнес-логика - это код, который выполняет цель приложения.

в основном есть три типа сеанса beans -

1.Statefull session bean

2. Непрерывный сеанс bean

3.Singleton session bean (ejb 3.1)

Ответ 3

На сайте есть другой ответ на gread, где объясняются различия CDI и EJB. Это очень помогает, когда вы наконец поймете всю картину. Где использовать EJB 3.1 и CDI?