转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> Web开发 >> 正文
代码人生学习品之EJB入门篇(三)         ★★★★

代码人生学习品之EJB入门篇(三)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:629 更新时间:2009/4/23 10:54:40
br>   在上一讲,我们将EJB通过Application Deployment Tool发布进了J2EE服务器中去。我想大家十分想使用一个客户端的程序来调用它。好,我们这一讲就来讲讲客户端程序的编 写。

  首先,我们先理一下思路。如果要使用服务器上的EJB哪么首先我们要得到一个Home接口,而这个接口需要你通过JNDI来得到,哪么JNDI是通过什么来找Home接口呢?哪就是我们在上一讲中所提到的在Application Deploying Tools里最后一步定义的JNDI name。再来理一下,首先,我们通过JNDI name利用JNDI来得到一个Home接口。再通过这个Home接口中的creat方法来得到一个Bean的实例化对象。以下为这段程序的代码:

  我们新建一EJBClient的工程,在这个工程中我们加入一ConverterClient.java文件,同时在工程中加入J2EE的lib引用,并且更增加一个lib,这个lib指向我们在上一讲中使用Application Deployment Tool生成的ConverterAppClient.jar文件。这里包括了EJB在客户端所使用的库文件。以下是ConverterClient.java文件代码:

ConverterClient.java

/**

  * Title: EJB Client Test Project$#@60;p$#@62;

  * Description: $#@60;p$#@62;

  * Copyright: Copyright (c) HD$#@60;p$#@62;

  * Company: China Code$#@60;p$#@62;

  * @author HD

  * @version 1.0

*/

package ejbclient;



import javax.naming.Context;

import javax.naming.InitialContext;

import javax.rmi.PortableRemoteObject;

//引用了EJB及EJB在Home的接口

import ejbtest.Converter;

import ejbtest.ConverterHome;



public class ConverterClient {



public static void main(String[] args) {

  try {

   //创建一个JNDI naming contest

   Context initial = new InitialContext();

   //从JNDI中以MyConverter名子来定位到对象(我们在发布时指定了这里能定位的JNDI的名称)

   Object objref = initial.lookup("MyConverter");

   //通过objref得到ConverterHome本地接口

   ConverterHome home =

     (ConverterHome)PortableRemoteObject.narrow(objref,

  ConverterHome.class);

   //再由Home接口的create方法来创建一个服务器上的EJB实例

   Converter currencyConverter = home.create();

   //调用EJB中的方法

   double amount = currencyConverter.dollarToYen(100.00);

   System.out.println(String.valueOf(amount));

   amount = currencyConverter.yenToEuro(100.00);

   System.out.println(String.valueOf(amount));



  } catch (Exception ex) {

  System.err.println("Caught an unexpected exception!");

  ex.printStackTrace();

   }

  }

}

  把这个java文件加入到在第一讲中我们建立的工程文件中去,让Jbuilder make工程一次。这样就会得到ConverterClient.class文件。在运行前我们要设置一下Jbuilder的工程,在Project-Project Properties…的Project Properties对话框中的Run Tab中设置Application的Main Class为ConverterClient。

  如果你得到java.lang.ClassCastException的意外。哪么你需要确定是否在Project的lib中加入了对ConverterAppClient.jar包的引用。另外你一定要确认你在工程中使用的JNDI name是否与你在程序中使用的名称一样。通常出现问题就在这点了。

  好,这里让你运行起来了第一个EJB的程序。实际上很简单,不是吗?我们会在下一讲中来讲讲EJB实施的原理。我在大多数的教程中都看到的是将理论放在最开始的地方,而我觉得先运行起一个实例更有利于大家的学习,更能有效的对EJB有一个深入的认识。我们在下一讲中来依照我们刚完成的实例理解一下EJB的部属和使用。



相关资源:

  有关本文章相关问题可以到news://news.chinacode.net 新闻组的CCU.Program.Java.EJB组中去讨论。同时你也可以在哪里找到本文章最新的版本。


转自 www.chinacode.net 中国代码联盟新闻组


没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台