EJB入门学习代码实例

开发 后端
本文介绍EJB入门代码,学习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文件。

           首先我们看一下这个图:

EJB Server

在EJB入门学习中,我们需要在我们的第一个例程中来创建一个Bean实体、一个Home的接口、一个远程接口。以下我们来列出相应的程序。

首先使用 Jbuilder建立一个名为ejbtest的Project(注意要将J2EE的lib加入到工程中来)。然后我们会加入 Converter.java(实现远程接口的工作)、ConverterHome.java(实现Home接口工作)、 ConverterEJB.java(EJB实体文件)。

Converter.java文件:

 

  1. /**  
  2.  
  3.   * Title: EJB Test Project$#@60;p$#@62;  
  4.  
  5.   * Description: $#@60;p$#@62;  
  6.  
  7.   * Copyright: Copyright (c) HD$#@60;p$#@62;  
  8.  
  9.   * Company: China Code$#@60;p$#@62;  
  10.  
  11.   * @author HD  
  12.  
  13.   * @version 1.0  
  14.  
  15. */  
  16.  
  17. package ejbtest;  
  18.  
  19.  
  20.  
  21. import javax.ejb.EJBObject;  
  22.  
  23. import java.rmi.RemoteException;  
  24.  
  25.  
  26.  
  27. public interface Converter extends EJBObject {  
  28.  
  29.  
  30.  
  31.   public double dollarToYen(double dollars) throws RemoteException;  
  32.  
  33.   public double yenToEuro(double yen) throws RemoteException;  
  34.  
  35. }  

 

ConverterHome.java文件:

 

  1. /**  
  2.  
  3. ? Title: EJB Test Project$#@60;p$#@62;  
  4.  
  5.   * Description: $#@60;p$#@62;  
  6.  
  7.   * Copyright: Copyright (c) HD$#@60;p$#@62;  
  8.  
  9.   * Company: China Code$#@60;p$#@62;  
  10.  
  11.   * @author HD  
  12.  
  13.   * @version 1.0  
  14.  
  15. */  
  16.  
  17. package ejbtest;  
  18.  
  19.  
  20.  
  21. import java.io.Serializable;  
  22.  
  23. import java.rmi.RemoteException;  
  24.  
  25. import javax.ejb.CreateException;  
  26.  
  27. import javax.ejb.EJBHome;  
  28.  
  29.  
  30.  
  31. public interface ConverterHome extends EJBHome {  
  32.  
  33.  
  34.  
  35.   Converter create() throws RemoteException, CreateException;  
  36.  
  37. }  

 

ConverterEJB.java文件:

 

  1. /**  
  2.  
  3.   * Title: EJB Test Project$#@60;p$#@62;  
  4.  
  5.   * Description: $#@60;p$#@62;  
  6.  
  7.   * Copyright: Copyright (c) HD$#@60;p$#@62;  
  8.  
  9.   * Company: China Code$#@60;p$#@62;  
  10.  
  11.   * @author HD  
  12.  
  13.   * @version 1.0  
  14.  
  15. */  
  16.  
  17. package ejbtest;  
  18.  
  19.  
  20.  
  21. import java.rmi.RemoteException;  
  22.  
  23. import javax.ejb.SessionBean;  
  24.  
  25. import javax.ejb.SessionContext;  
  26.  
  27.  
  28.  
  29. public class ConverterEJB implements SessionBean {  
  30.  
  31.  
  32.  
  33.   public double dollarToYen(double dollars) {  
  34.  
  35.  
  36.  
  37. return dollars * 121.6000;  
  38.  
  39. }  
  40.  
  41.  
  42.  
  43. public double yenToEuro(double yen) {  
  44.  
  45.  
  46.  
  47. return yen * 0.0077;  
  48.  
  49. }  
  50.  
  51.  
  52.  
  53. public ConverterEJB() {}  
  54.  
  55. public void ejbCreate() {}  
  56.  
  57. public void ejbRemove() {}  
  58.  
  59. public void ejbActivate() {}  
  60.  
  61. public void ejbPassivate() {}  
  62.  
  63. public void setSessionContext(SessionContext sc) {}  
  64.  

 

好,一切都正常,哪么我们来编译它。如果出现了什么Error #:302 cannot access class javax.ejb…..这样的错误,哪么就说明你没有将EJB的相关jar文件的lib加入到工程中来。如果正确,哪么你就可以在工程的bin目录中得到相应的三个class文件了。对EJB入门做了个简单的介绍,希望对你有所帮助。

【编辑推荐】

  1. Eclipse+JBoss+EJB3编写第一个无状态的SessionBean
  2. Java使用EJB容器的详细概述
  3. 如何通过远程客户端跨JVM远程访问EJB
  4. 关于EJB详细概述(上)
  5. 为什么我喜欢EJB 3.0并且尤其喜欢EJB 3.1
责任编辑:佚名 来源: 开发者在线
相关推荐

2009-06-12 09:07:01

EJB入门

2009-06-12 12:46:59

EJB3.0

2009-06-12 10:30:07

学习EJB

2021-08-24 13:05:25

TypeScript代码前端

2009-06-11 15:26:05

EJB组件EJB容器

2009-06-11 16:53:09

什么是EJBEJB

2009-12-28 11:08:34

ADO 实例

2012-06-07 09:18:16

ibmdw

2011-02-28 13:34:51

SpringMVC

2009-06-11 16:25:44

EJB2.0EJB

2012-07-27 10:30:12

重构

2009-06-04 17:33:08

EJB 3.1EJB 3.0

2009-06-12 11:06:35

EJB技术

2009-06-25 16:35:12

EJB技术

2009-09-23 10:28:49

使用Hibernate

2013-05-20 15:42:22

2009-06-30 14:02:00

hibernate入门MyEclipse开发

2023-11-01 08:50:52

DjangoPython

2011-12-22 13:17:03

JavaJFreeChart

2017-09-04 22:41:31

深度学习矩阵运算代码
点赞
收藏

51CTO技术栈公众号