0

没用过EJB3,但是看了一篇教程,EJB3看起来主要是通过JPA来操作数据库中的数据(当然也包含其他业务逻辑)。只是好奇,如果不需要数据库,使用 EJB3 是否仍然有益,或者它只是增加了应用程序的复杂性?POJO 会是更好的实施选择吗?

4

2 回答 2

4

EJB 的大部分好处来自事务和持久性。

但即使没有它们,您也可以从 EJB 中受益。它可以为您提供经过验证的聚类和平衡模型。它可以为您提供声明式安全性。它可以为您提供 MDB,这是侦听 JMS 队列/主题和计时器的便捷方式。

以上所有都可以使用第三方库完成,例如 Spring。尽管 EJB 是高度一致的,但要获得例如集群和安全性,您可能需要将两个产品结合起来,并且不能保证它们能够很好地协同工作并且不需要太多胶水。

于 2011-05-04T00:55:51.643 回答
2

EJB 是部署在管理生命周期、线程和其他服务的应用服务器上的事务性分布式组件。持久性只是 EJB 的一种。即使您不想使用实体 bean,您仍然可能会发现无状态、有状态或消息 EJB 很有用。

话虽如此,您可以创建有状态、无状态、持久性或消息驱动的 POJO 组件。您不需要 EJB;像 Spring 这样的东西可能是一个不错的选择。

于 2011-05-04T00:25:37.630 回答