PortableRemoteObject.narrow()的用法?

羊城咩咩咩 2004-11-12 11:23:01
Object objRef = ctx.lookup("Hello");
home=(HelloHome)javax.rmi.PortableRemoteObject.narrow(objRef,hello.ejb.HelloHome.class);

请问,lookup("Hello")后得到的实际上是什么?Hello?HelloBean?还是HelloHome??
还有,第二个句子是用来做什么的?

谢谢!
...全文
225 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
passwords 2004-11-15
  • 打赏
  • 举报
回复
相当于,key-value的关系
umbrella1984 2004-11-14
  • 打赏
  • 举报
回复
我们公司没用上EJB,呵呵,自己学习时玩玩,国内公司没几个用EJB的,
羊城咩咩咩 2004-11-13
  • 打赏
  • 举报
回复
找了一下资料,ctx.lookup()返回的是Home接口的引用。

“因为要兼容IIOP 1.2的关系 Java RMI-IIOP在得到返回的remote reference后,有时候需要调用javax.rmi.PortableRemoteObject.narrow() 这个方法来转换类型”

这句话是什么意思呢?
JavaD 2004-11-13
  • 打赏
  • 举报
回复
你说的是第2个参数吧,
这其实和delphi里的rtti,c#里面的反射机制差不多,应该从某个上下文中通过其class信息,得到一个实例,
就是拿到一把钥匙,上面写着房号112,那么这钥匙并不是房间,但是你已经可以叫服务员(jndi服务)带你去找房间了,

这样解释不知道对不对,我也是初学者
JavaD 2004-11-13
  • 打赏
  • 举报
回复
对也是一个Context,这种细节我认为不用去关心它。。。
umbrella1984 2004-11-13
  • 打赏
  • 举报
回复
得到的是一个JNDI,第二个句字创建HOME对象。
羊城咩咩咩 2004-11-13
  • 打赏
  • 举报
回复
啊?忘光了,那平时写程序的时候不要用到吗?
umbrella1984 2004-11-13
  • 打赏
  • 举报
回复
想起来了,NND都忘光了,郁闷。。

67,515

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧