Миграция устаревшего приложения: EJB3 или Spring
У меня есть устаревшее приложение, использующее struts
и ejb2.0
, hibernate v3.0
, запущенные на JBoss версии 4.0, и теперь мы переносим это приложение в новый стек технологий. Мы изучаем pros
и cons
разных стеков технологий, и сейчас у нас есть два варианта: EJB3.0
и JSF
, Hibernate v4
на Jboss 7 или Spring
и Hibernate v4
на tomcat.
Какие параметры следует рассматривать для выбора того или другого или наоборот?
Update:
Какая из EJB3.0
и Spring
имеет эффективную поддержку сообщества, тег стороны - EJB3.0
имеет 1097 вопросов, а Spring
- 13297, и поэтому некоторые из них склоняются к Spring, также не будучи стандартный spring имеет преимущество быстрого обновления, которое бы устранило проблемы отрасли довольно быстро по сравнению с ejb3.
Мысли?
Ответы
Ответ 1
Давным-давно, Spring был де-факто для использования, но со временем Spring превратился в совершенно тяжелого зверя. EJB, с другой стороны, значительно уменьшился и был значительно упрощен.
То же самое касается JSF, который был значительно улучшен в версии 2.0.
Эти технологии действительно сияют при совместном использовании в стеке Java EE 6, который в настоящее время имеет большой импульс. Полная реализация Java EE 6 (например, GlassFish) составляет всего лишь 50 Мбайт, а меньшая часть ее (так называемый веб-профиль) может быть вдвое меньше. Серверы запускаются за считанные секунды.
В настоящий момент я больше не вижу конкретной потребности в Spring. Если ваш стек уже включен в Spring, он, конечно, не требуется для перехода на Java EE, но для новых проектов я бы никогда не выбрал Spring в эти дни.
Ответ 2
В прошлом году у меня были такие же сомнения, я выбрал EJB3, и я не жалею, вот хорошая статья:
http://biese.wordpress.com/2008/02/03/another-thought-of-spring-vs-ejb3/