Con*_*nor 9 java ejb-3.0
我知道有两种获取EJB实例的方法:
使用这两种方法有什么不同,含义和陷阱?它们是一样的吗?依赖注入比查找更快吗?那么事务处理和对象生命周期管理呢?
我所知道的事情包括:
注解
抬头
ewe*_*nli 6
两者都达到了相同的效果.这更多的是耦合问题.使用注释,您可以实现松散耦合,并且更容易进行模拟和测试.通过直接查找,您可以依赖于有时可能不方便的初始上下文.
恕我直言查找无处不在.例如,在Glassfish中,只有先前@EJBs(...)在使用POJO的一个会话bean上"导入"了POJO,才能查找来自POJO的本地EJB .见这个讨论.您需要了解本地和全局 JNDI 之间的区别.
@EJBs(...)
我的建议是:尽可能使用注释.如果POJO需要对EJB的引用,则将其作为参数传递(例如,在构造函数中).这就是所谓的依赖倒置,无论如何都是一种好的做法.
axt*_*avt 2
查找取决于 JNDI 实现的存在,也就是说,您必须配置 JNDI 实现才能运行单元测试,然后可以手动配置带注释的字段。
归档时间:
15 年,7 月 前
查看次数:
6960 次
最近记录:
14 年,7 月 前