一步一步用JBuilder4开发EJB (续) - 中国WEB开发者网络 (http://www.webasp.net) -- 技术教程 (http://www.webasp.net/article/) --- 一步一步用JBuilder4开发EJB (续) (http://www.webasp.net/article/7/6998.htm) |
| -- 作者:未知 -- 发布日期: 2003-07-26 |
| 四、Entity Beans 1. 建立数据库 我们已经成功的开发了一个Session Bean。不要觉得它简单,至少它是在JBuilder4中开发EJB的基本步骤。在这一章里,我们将要开发EJB的另外一种形态--Entity Beans。 一个Entity Bean是一个稳定的数据的对象表现,在我们的例子里,稳定的数据是一个关系数据库 首先,我们将在InterBase上建立一个数据库。 步骤: 1、 启动InterBase Server。 2、 启动InterClient中的InterServer。 3、 运行InterBase中的InterBase Winodws ISQL。 4、 在InterBase Winodws ISQL中,选择"File"-"Create Database…"。 5、 设置Database Name为"d:\project\quickstart\accounts.gdb,用户名和口令用"SYSDBA"、"masterkey"。点击OK。如图17。 6、 在InterBase Winodws ISQL窗口上部的文本框中,输入下面的建立数据库表的SQL语句: CREATE TABLE account ( name VARCHAR(20) NOT NULL, balance INTEGER NOT NULL, PRIMARY KEY (name) ) 图17 7、 执行建立的SQL语句。如图18。 图18 8、 退出,回答"Yes"提交工作。 2. 开发Entity Beans 我们将利用JBuilder4所提供的向导来生成我们将要开发的Entity bean的代码,并且将它加入到前面的项目中。 首先,我们需要为刚才建立的数据库,指定JDBC驱动程序。退出JBuilder4。从InterClient的安装目录下(这里是:D:\InterBase Corp\InterClient)复制interclient.jar文件到JBuilder4安装目录下的lib子目录里面。用任意的文本编辑器打开JBuilder4安装目录下的bin子目录里面的jdbce.config文件。在此文件的尾部加上: # Add other database drivers here addpath ../lib/interclient.jar 保存此文件,重新打开JBuilder4。 检查以下我们前面所做的工作: 1、 在JBuilder4中,选择"Tools"-"JDBC Explorer"。 2、 在JDBC Explorer窗口中,选择"File"-"New…"。 3、 选择"Driver"为:interbase.interclient.Driver;"URL"通过旁边的浏览按钮定位在我们刚才建立数据库的地方(D:\project\quickstart\accounts.gdb)。如图19。 图19 4、"OK"之后,在JDBC Explorer中展开我们刚刚建立数据库URL。用户名:SYSDBA;密码:masterkey。登录之后,展开树,就可以看到我们所建立的表和表中的列了。如图20。 图20 现在,我们就可以开始建立我们的Entity bean了。 步骤: 1、 在JBuilder4中,选择"File"-"New…"-"Enterprise"标签--"EJB Entity Bean Modeler",点击"OK"按钮之后,在向导的步骤1里,将此Bean加入已经建立的EJB Group(quickstart.ejbgrp)。 2、 利用前面建立的数据库URL(Driver;interbase.interclient.Driver;URL: jdbc:interbase://localhost/D:\project\quickstart\ACCOUNTS.GDB),用户名:SYSDBA;口令:masterkey;登录到数据库中,点击"Next"。如图21。 图21 3、 根据提示,选择ACCOUNT表,"Next",选择表中所有的列,"Next"到"Finish"。 4、 保存所有的文件,然后编译工程。(单击工具栏的 和 图标)。这样,我们实际上就已经完成了这个Entity Bean的开发工作。JBuilder4的向导已经在配置描述符中增加了一个入口和一个数据源的入口。 一个Entity Bean只不过是生成的代码。下面我们将建立一个客户程序来访问这个Entity Bean。这个客户程序将建立四个Entity Bean的实例,在数据库的Account表中建立四行数据。 使用JBuilder4的EJB Test Client Wizard,在这一次我们建立的测试客户程序,将依靠Account EJB,根据提示,使用缺省的类名:AccountTestClient1就可以了。利用向导,生成main函数,然后在生成的main函数的try…catch语句块中,"accountHome = (AccountHome) PortableRemoteObject.narrow(ref, AccountHome.class);"的后面,加入下面的代码: Account ac1=accountHome.create("John",150); Account ac2=accountHome.create("Paul",150); Account ac3=accountHome.create("George",150); Account ac4=accountHome.create("Ringo",150); 用鼠标右键点击项目窗格的AccountHome.java文件,选择"Properties…"。在弹出窗口中的"Build"标签中的"VisiBroker"标签中,选择"Generate IIOP",点击"OK"。 保存所有的文件,然后编译工程。(单击工具栏的 和 图标)。3. 配置 我们仍然在JBuilder4中运行EJB容器。客户程序将依靠运行在EJB容器中的Entity Bean在数据库的Account表中建立四行数据。 首先,建立一个库,这样当我们运行EJB容器的时候,InterClient JDBC驱动程序能够被添加到classpath。 步骤: 1、 在JBuilder4中选择"Project"-"Project Properties…"。 2、 在"Required Libraries"标签中,点击"Add…"。 3、 在弹出的窗口中,点击"New…"。 4、 将JBuilder4安装目录下的lib子目录里的interclient.jar文件添加到"Library Paths"中。 5、 "Name"值设为:InterClient。 完成之后,就可以运行你建立的应用了。 确认VisiBroker Smart Agent、InterBase Server和InterClient的InterServer仍然在运行。 点击工具条上的 ,运行容器。等待容器初始化。用鼠标右键点击项目窗口的AccountTestClient1.java,选择"run"。 完成之后,运行JDBC Explorer。 展开"interbase://localhost/D:\project\quickstart\ACCOUNTS.GDB",点击"Tables"下的ACCOUNT表。在右边窗格选择Data标签。你将看到程序所创建的新的四行数据。 如图22。 图22 |
| webasp.net |