在Web应用程序中使用EJB有什么好处?

tk2*_*000 3 jsf ejb java-ee java-ee-6 jsf-2

我正在使用Java EE开发一个数据库驱动的Web应用程序,我想知道使用EJbs的好处.

如果我理解正确,最好将EJB用于各种业务逻辑或数据库事务.

我使用Hibernate作为我的JPA,这是我的问题:

使用注入的EJB作为DAO而不是常规Java类作为从我的Managed Bean调用的DAO有什么好处?有什么区别?

我是Java EE的新手,所以这可能是一个初学者的问题.

Mic*_*rdt 5

如果使用EJB,则可以使用EJB容器提供的许多非常重要的服务.对于几乎任何人都有用的最重要的是依赖注入和声明式事务.这两者都可以由Spring框架提供.对于非常大的应用程序,EJB具有明确定义的聚类模型可能很有用,但您可能不需要它.

  • @ tk2000:即使你需要交易,手工完成也很繁琐且容易出错.如果您已经在使用Java EE服务器,因此可以使用EJB容器,那么就值得使用EJB.现代EJB非常易于使用 - 只需几个注释,您不必再处理部署描述符和JNDI查找,因此没有理由害怕它们. (4认同)