Разница между инфраструктурой Java EE и Spring

Я стараюсь узнать разницу между Java EE и Spring Framework. Может ли кто-нибудь помочь мне в этом.

Ответ 1

Java EE является стандартной официальной спецификацией для полнофункционального стека приложений Enterprise Application Framework. Включает такие вещи, как Object-Relational Mapping, Security, Web Applications, подключение к базе данных, транзакции...

В дополнение к спецификациям Java EE существуют JavaEE реализации/серверы приложений, например: JBoss, Glassfish, WebSphere, Weblogic.

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

Ответ 2

Java EE:

  • Стандартная платформа на основе API, основанная на стандарте Java EE
  • IT основан преимущественно на аннотации и CDI
  • Структура JFC MVC для веб-разработки
  • Реализация JPA для обработки операций с БД
  • API JTA с реализацией
  • Контейнер EJB и реализация на основе POJO
  • Лицензия Oracle

Spring:

  • На основе IOC и AOP
  • На основе конфигурации XML (теперь они используют аннотацию)
  • Использует Spring инфраструктуру DAO (на основе шаблона проектирования шаблонов) для подключения к базе данных
  • Обеспечить уровень абстракции для поддержки различных поставщиков реализации JTA
  • Ингредиент с различными поставщиками Java для поддержки различных возможностей, которые легко интегрируются со стойками и т.д.
  • Обеспечить сквозную платформу для создания веб-приложения, обеспечивающего свободную связь с использованием DI и AOP
  • Лицензия с открытым исходным кодом

Ответ 3

Java EE:

  • Стандарт Sun/Oracle, который производители серверов приложений соответствуют
  • На основе Enterprise Java Beans
  • Реализовано многими поставщиками: BEA/Oracle, WebSphere, JBOSS, Glassfish и т.д.

Spring:

  • Нестандарт; это детище Рода Джонсона и реализовано Spring/VMWare.
  • Не основан на Enterprise Java Beans; это модель POJO. Может управлять EJB, если вы хотите их использовать, но не требуется.
  • Не реализовано ни одним поставщиком, кроме Spring.

EJB 3.1 взяла много от Spring. Теперь он включает инъекцию зависимостей, форму аспектов и JPA. EJB 3.1 намного ближе к Spring, чем EJB 2.0.