我可以在@RequestScoped bean而不是无状态EJB中编写业务逻辑吗?

时间:2016-11-03 10:19:59

标签: java-ee cdi ejb-3.0 interceptor

我想知道我是否可以使用@RequestScoped而不是@Stateless注释的类来编写我的业务逻辑。

我有一些EJBs,它们有一些业务逻辑,没有数据库代码。我将其声明为EJB的唯一原因是利用interceptors。由于不需要事务管理,我认为将其声明为@RequestScoped会更有意义。

任何人都可以建议。

1 个答案:

答案 0 :(得分:0)

如果您想根据单个HTTP请求编写业务逻辑,请使用@Named@RequestScoped(为每个请求创建一个定义为@RequestScoped的对象并共享所有在整个请求中注入它的bean)。但是在UserTransactionDatasource的情况下,线程安全和接收器将是一个问题,然后坚持@stateless