В старые добрые времена, когда серверы приложений поддерживали только EJB 2, разработка сервисов с использованием EJB была кошмаром. Каждая служба (например, сессионный компонент без сохранения состояния) требовала для правильной работы набора интерфейсов и странных дополнительных методов (домашний интерфейс, удаленный интерфейс, дескрипторы развертывания и т. Д.).
Для запуска EJB вам понадобится сервер приложений, такой как Jboss или Glassfish. Для запуска сервлетов вам просто нужен контейнер сервлетов, такой как Tomcat или Jetty, который намного легче, чем сервер приложений.
Spring предлагает способ создания простых сервисов в виде простых POJO (которые могут быть представлены через сервлеты). Таким образом, иметь возможность разрабатывать услуги как POJO было просто сбывшейся мечтой. Службы не нуждались во всех ограничивающих зависимостях EJB-интерфейсов, и их можно было развернуть в облегченном контейнере сервлетов.
Затем появился EJB3, который значительно улучшил жизнь разработчика Java EE. EJB больше не нуждались в зависимостях для домашнего и удаленного интерфейсов (по крайней мере, не через наследование). Современный сервис EJB 3 очень похож на сервис на основе POJO. Основное отличие состоит в том, что для EJB-компонентов по-прежнему требуется развернуть сервер приложений.
Гуру Spring Род Джонсон выпустил книгу Разработка J2EE без EJB который подробно объясняет, как заменить ваши старые компоненты J2EE (например, EJB) на более легкие Spring Pojos - хорошее чтение!
person
wassgren
schedule
23.12.2014