今天终于开始我们的EJB之路了。我会带着大家一点点的学习EJB的开发、使用以及在应用系统中的部属。对于一个Java开发人员来说,EJB是一个小的关口,因为它比单纯的开发java、servlet、JSP更多了几分系统设置上的麻烦,同时需要你更先要去了解更为广泛的知识后才能好的利用它。好了,我们就开始我们的又一次EJB学习品罢。
本程序使用了sun的J2EE系统(如果你在使用J2EE设置上有什么问题,可以去参见本人的代码人生之学习品中的《J2EE使用指南》的文章)。使用的例程也是J2EE中的一个最简单的例子。使用的编辑和make工具是JBuilder。不过你也可以使用手动来用javac将java文件编译成为.class文件的。如果你和我一样使用了Jbuilder来开发相关的程序,哪么请在你的Project中加入一个lib,它包含了你的J2EE目录中的lib里的j2ee.jar文件。并且在我们以下开发的Project中都加入这个lib。如果你是使用了javac以方式来进行编译,哪么请在你的CLASSPATH中加入上面这个jar文件。
首先我们看一下这个图:
我们需要在我们的第一个例程中来创建一个Bean实体、一个Home的接口、一个远程接口。以下我们来列出相应的程序。
首先使用Jbuilder建立一个名为ejbtest的Project(注意要将J2EE的lib加入到工程中来)。然后我们会加入Converter.java(实现远程接口的工作)、ConverterHome.java(实现Home接口工作)、ConverterEJB.java(EJB实体文件)。
Converter.java文件:
/**
* Title: EJB 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 ejbtest;
import javax.ejb.EJBObject;
import java.rmi.RemoteException;
public interface Converter extends EJBObject {
public double dollarToYen(double dollars) throws RemoteException;
public double yenToEuro(double yen) throws RemoteException;
}
ConverterHome.java文件:
/**
?* Title: EJB 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 ejbtest;
import java.io.Serializable;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
import javax.ejb.EJBHome;
public interface ConverterHome extends EJBHome {
Converter create() throws RemoteException, CreateException;
}
ConverterEJB.java文件:
/**
* Title: EJB 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 ejbtest;
import java.rmi.RemoteException;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
public class ConverterEJB implements SessionBean {
public double dollarToYen(double dollars) {
dollars * 121.6000;
}
public double yenToEuro(double yen) {
return yen * 0.0077;
}
public ConverterEJB() {}
public ejbCreate() {}
public void ejbRemove() {}
public void ejbActivate() {}
public void ejbPassivate() {}
public void setSessionContext(SessionContext sc) {}
}
好,一切都正常,哪么我们来编译它。如果出现了什么Error #:302 cannot access class javax.ejb…..这样的错误,哪么就说明你没有将EJB的相关jar文件的lib加入到工程中来。如果正确,哪么你就可以在工程的bin目录中得到相应的三个class文件了。
好,下一讲里我们来讲述怎么样将这个EJB部属到J2EE系统中去。
相关资源: 有关本文章相关问题可以到 新闻组的CCU..Java.EJB组中去讨论。同时你也可以在哪里找到本文章最新的版本。
J2EE系统: 可以免费下载到J2EE系统软件
JBuilder: 可以免费下载到Jbuilder 3.5基础版,本文章中开发工具就是它了。
代码人生,人生之代码如何去写?
如果你也是一位代码人,哪么让我们互道珍重,一起前进!