Являются ли Enterprise Java Beans полезными по сравнению с Spring? - PullRequest
3 голосов
/ 30 марта 2009

У меня есть предстоящий проект в классе, который позволит мне работать с EJB или Spring, и мне было интересно, что будет более подходящим для ситуаций "реального мира".

Ответы [ 2 ]

5 голосов
/ 30 марта 2009

Две технологии не являются взаимоисключающими. И когда вы говорите EJB, это зависит от того, говорите ли вы о сессионных компонентах или объектных компонентах (или компонентах, управляемых сообщениями для полноты).

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

EJB3 также берет листок из книги Spring с некоторыми функциями внедрения зависимостей.

При этом, это было давней причиной спора.

Вероятно, стоит прочитать некоторые (многие) сравнения в Интернете, такие как это .

Действительно трудно рекомендовать одно другому, не зная ваших требований. Лично я предпочитаю Spring, если только у меня нет веских причин не делать этого.

4 голосов
/ 17 апреля 2009

Spring принял совершенно другой (и значительно улучшенный) подход к некоторым проблемам, для решения которых EJB2 был разработан. Впоследствии появился EJB3, который имеет странное сходство с подходом Spring - не то, что Sun или JBoss это признают.

Несмотря на сходство, EJB3 и Spring не решают одни и те же проблемы. EJB3 предоставляет компонентную программную модель и структуру, тогда как Spring - это больше набор инструментов, который предоставляет согласованные решения для многих сквозных задач, таких как управление транзакциями и удаленное взаимодействие. EJB3 обеспечивает больше структуры из коробки, но обратная сторона в том, что он становится более ограничительным.

...