我正在为EJB认证做准备,我将继续阅读EJB 3.1书(O'Reilly)
其中一章讨论了JNDI,ENC和EJB连接
你们有些人可以给我一个真实的生活场景,以便我能更好地理解
答案 0 :(得分:6)
此场景中的JNDI用作中心位置,通过该位置将“名称”(一种URL)路由到EJB bean。想一想Servlet如何映射到URL。
如果EJB bean是应用程序的本地(例如,它们驻留在Web模块中或同一EAR的EJB模块中),那么您不一定需要与JNDI联系。也就是说,您可能使用注入来获取bean的实例,然后不需要JNDI。
但是,如果需要在远程服务器中寻址EJB bean,或者如果要以编程方式查找(代理)bean,则可以使用其JNDI名称和JNDI来获取它。
有关详情,请参阅此处,包括ENC:Declaring @Resource and @EJB at the class level in Java EE6