EJB会话bean查找和注入注解两种方式

1..通过JNDI查找

如ctx.lookup("java:comp/env/ejb3/InjectionLocalbean")语句通过JNDI查找获得了InjectionLocal的本地引用,这种方式需要先网JNDI ENC中添加一个名字为ejb3/InjectionLocalbean的注册项,然后才能通过ctx.lookup("java:comp/env/ejb3/InjectionLocalbean")获得InjectionLocal的本地引用。

ENC 是EJB容器里一个属于自己的内部注册表,这个内部注册表被称为Enterprise Naming Context(ENC),EJB容器可以在其中维护某些指向外部环境的引用。要往ENC中添加一个指向资源引用的注册项,可以通过配置ejb-jar.xml文件来实现。该文件必须放到jar文件的META-INF文件夹中。要从ENC中中获取资源的应用,可以通过注册表名进行JNDI查找,如(InjectionLocal il = (InjectionLocal)ctx.lookup("java:comp/env/InjectionLocalbean")),comp代表组件,java:comp/env指向该EJB的ENC,ejb3/InjectionLocalbean是在ENC中定义的注册项名称。

2..通过注入注解

如@EJB(beanName="InjectionLocalbean")InjectionLocal il;通过使用注入注解获得了InjectionLocal的本地引用。@EJB就是注入注解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值