Spring или CDI или EJB3 - PullRequest
       25

Spring или CDI или EJB3

5 голосов
/ 08 июля 2011

Я довольно новичок в концепции внедрения зависимостей, и в настоящее время мы пишем веб-приложение с использованием JSF и, возможно, Primefaces.В настоящее время мы оцениваем, использовать ли Spring или EJB3.Я был очень близок к выбору Spring, но потом услышал о CDI.Можете ли вы дать нам несколько советов, которые лучше всего подходят для следующей ситуации:

В настоящее время мы довольно плохо знакомы с миром J2EE и не знаем, будем ли мы использовать Glassfish или JBoss (или можем просто придерживатьсяTomcat).

Веб-приложение в основном является прототипом корпоративного CRUD-приложения, которое должно уметь обрабатывать сложную бизнес-логику.Мы хотим сосредоточиться на «адаптивности», так как некоторые требования не ясны и будут определены примерно через год (когда мы узнаем, сможем ли мы все еще использовать прототип).

Мы не можем использовать Hibernate, так какнам придется написать довольно сложные операторы SQL.В настоящее время мы получили хороший опыт работы с абстракцией SQL весной.

Возможно, я сейчас сравниваю яблоки и апельсины, но информации слишком много, если вы новичок в j2ee.Я думаю, что EJB - это стандарт, определенный с помощью JCP, Spring - это стандарт, определяемый рынком, а CDI - это стандарт, который также определен JCP, чтобы делать то, что может делать Spring.Но я, безусловно, ошибаюсь; -).

Спасибо,

iuiz

1 Ответ

8 голосов
/ 08 июля 2011

Линкольн Бакстер отлично справляется с объяснением технических различий в этой статье: http://ocpsoft.com/java/spring-to-java-ee-a-migration-guide-cdi-jsf-jpa-jta-ejb/ Короче говоря: и Spring, и CDI смогут обеспечить внедрение зависимостей. Один из них - это стандарт Java EE, другой - широко известная технология. Glassfish и JBoss без проблем запускают приложения Spring и CDI. Поскольку невозможно использовать Hibernate, нельзя использовать собственный SQL в Hibernate. Сохраните вашу команду, если сможете, много лишнего простого CRUD-кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...