快速业务通道

EJB 3.0注入(会话BEAN) - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

EJB 3.0注入(会话BEAN)

时间:2011-01-20

按照管理 来看看 例子 就清楚了

这个是一个实体bean的实现

package com.ly.bean; import javax.ejb.Remote; @Remote public interface Bean1 {   public void sayBean1(); } package com.ly.bean; import javax.ejb.Remote; @Remote a public interface Bean2 {   public void sayBean2(); } package com.ly.bean; import javax.ejb.Remote; @Remote public interface Bean3 {   public void sayBean3(); } package com.ly.impl; import javax.ejb.Stateless; import com.ly.bean.Bean1; import com.ly.bean.Bean2; @Stateless(name="bean12") public class Bean1Impl implements Bean1,Bean2 {     public void sayBean1() {       System.out.println("bean1.........");     }     public void sayBean2() {      System.out.println("bean2.........");     } }

package com.ly.impl; import javax.ejb.EJB; import javax.ejb.Stateless; import com.ly.bean.Bean1; import com.ly.bean.Bean2; import com.ly.bean.Bean3; @Stateless(name="bean3") public class Bean2Impl implements Bean3 {     @EJB(beanName="bean12")     Bean1 bean1;     Bean2 bean2;     public void sayBean3() {       bean1.sayBean1();       bean2.sayBean2();       System.out.println("bean3.........");     }     @EJB(mappedName="bean12/remote")     public void setBean2(Bean2 bean2) {         this.bean2 = bean2;     } }

EJB 3.0注入(会话BEAN)(2)

时间:2011-01-20

客户端代码:

import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import com.ly.bean.Bean3; public class Test {   public static void main(String args[]) throws Exception{      Properties pro = new Properties();      pro.setProperty("java.naming.factory.initial","org.jnp.interfaces.NamingContextFactory");      pro.setProperty("java.naming.provider.url","localhost:1099");      pro.setProperty("java.naming.factory.url.pkgs","org.jboss.naming");      Context context =new InitialContext(pro);      Bean3 bean=(Bean3) context.lookup("bean3/remote");      bean.sayBean3();        } }

打印结果是:

21:36:51,843 INFO [Server] JBoss (MX MicroKernel) [4.2.2.GA (build: SVNTag=JBoss_4_2_2_GA date=200710221139)] Started in 18s:328ms

21:36:59,921 INFO [STDOUT] bean1.........

21:36:59,937 INFO [STDOUT] bean2.........

21:36:59,937 INFO [STDOUT] bean3.........

注入 可以在 属性上面 通过@EJB注解来标识  也可以注释在setter方法的上方

@EJB(beanName="")指明的是 bean的指明映射名字

而@EJB(mappedName="")指明的是  JNDI名字 比如test/remote

注解 只能注入 本地命名服务 ,不能注入 远程服务器对象

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号