Главная » Spring » Spring и EJB3

0

Компоненты EJB пользуются большой популярностью в среде Java-разработчиков с самого момента их появления, тем не менее они имеют свои сложности:

# получение доступа к EJB связано с необходимостью реализа-

ции взаимодействия с JNDI, извлечения домашнего интерфей-

са компонента и последующего его использования для созда- ния прикладного интерфейса;

# согласно спецификации EJB 2.x, компоненты EJB должны реа-

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

# сигнатуры  методов  удаленных  компонентов  EJB  должны

включать определение throw java.rmi.RemoteException, даже ес- ли реализация метода не предусматривает возбуждения ис- ключения.

Эти и другие проблемы способствовали потере интереса к ком- понентам EJB у многих разработчиков и вынудили их искать бо- лее простые альтернативы, такие как фреймворк Spring. Реагируя на отрицательные тенденции, организация Java Community Process пересмотрела спецификацию EJB и внесла существенные измене- ния, представив сообществу новую спецификацию: EJB 3.

Спецификация EJB 3 решает проблемы своей тяжеловесной пред- шественницы, предусмотрев поддержку внедрения зависимостей для компонентов EJB и ресурсов взамен сложных взаимодействий с JNDI. При этом EJB 3 приветствует использование аннотаций Java 5 для объявления зависимостей, которые должны внедряться в свойства компонентов.

Кроме того, спецификация EJB 3 не требует, чтобы компонен- ты EJB реализовали какой-то специализированный интерфейс или методы управления жизненным циклом. А для удаленных методов больше не требуется объявлять, что они возбуждают исключение RemoteException. Проще говоря, спецификация EJB 3 приняла модель программирования на основе POJO.

В Spring отсутствует непосредственная поддержка спецификации EJB 3. Однако для Spring имеется расширение, позволяющее ис- пользовать аннотации EJB 3 для внедрения зависимостей и исполь- зования приемов аспектно-ориентированного программирования.

Источник:   Уоллс К., Spring в действии. – М.: ДМК Пресс, 2013. – 752 с.: ил.

По теме:

  • Комментарии