2016-11-03 2 views
1

Я хочу знать, могу ли я использовать классы, аннотированные с помощью @RequestScoped, вместо @Stateless, чтобы написать мою бизнес-логику.Могу ли я написать бизнес-логику в @RequestScoped beans вместо безгосударственного EJB?

У меня есть EJBs, которые имеют некоторую бизнес-логику и код базы данных. Единственная причина, по которой я объявила ее EJB, - это воспользоваться interceptors. Поскольку нет необходимости в управлении транзакциями, я думаю, что объявление его как @RequestScoped будет иметь больше смысла.

Может кто-нибудь предложить.

+1

Я предполагаю, что вы проектируете службу REST. Не знаю, какую бизнес-логику вы планируете использовать в своем перехватчике, но вы, вероятно, можете достичь того же результата со стандартными фильтрами JEE, связанными с сервисом отдыха. Другая альтернатива манипулированию запросом/ответом, если моя догадка о REST права, заключается в использовании MessageBodyReader и MessageBodyWriter. – Leonardo

ответ

0

Используйте @Named и @RequestScoped если и хотят программировать бизнес-логику зависят от одного запроса HTTP (объекта, который определяется как @RequestScoped создается один раз для каждого запроса и разделяемый всего боб, что впрыскивать его в течение запроса) , Но в случае UserTransaction, Datasource проблема безопасности резьбы и вставки будет проблемой, а затем придерживаться @stateless.

Смежные вопросы