首页 / 软件开发 / JAVA / 深入掌握Java技术EJB调用原理分析二
深入掌握Java技术EJB调用原理分析二2011-04-19Home接口的Weblogic实现类的stub类 ((Hello Bean))_HomeImpl_WLStub(部署的时候动态生成字节码)Home接口的Weblogic实现类的skeleton类 ((Hello Bean))_HomeImpl_WLSkeleton(部署的时候动态生成字节码)Remote接口:Hello (用户编写)Remote接口的Weblogic实现类 ((Hello Bean))_EOImpl(EJBC生成)Remote接口的Weblogic实现类的stub类 ((Hello Bean))_EOImpl_WLStub(部署的时候动态生成字节码)Remote接口的Weblogic实现类的skeleton类 ((Hello Bean))_EOImpl_WLSkeleton(部署的时候动态生成字节码)客户端只需要Hello.class和HelloHome.class这两个文件。((Hello Home)) home = (Home)((Portable Remote Object)).narrow(ctx.lookup("Hello"),((Hello Home)).class);这一行代码是从JNDI获得Home接口,但是请记住!接口是抽象的,那么home这个对象到底是什么类的对象实例呢?很简单,用toString()输出看一下就明白了,下面一行是输出结果:((Hello Bean))_HomeImpl_WLStub@18c458这表明home这个通过从服务器的JNDI树上查找获得的对象实际上是HelloBean_HomeImpl_WLStub类的一个实例。接下来客户端代码:Hello h = home.create()同样Hello只是一个抽象的接口,那么h对象是什么东西呢?打印一下:((Hello Bean))_EOImpl_WLStub@8fa0d1原来是HelloBean_EOImpl_WLStub的一个对象实例。