将存储过程封装为EJB组件的方法 - 编程入门网
DBMS 无关”。有了 DAB 库,就可以用一个编码模式在会话 EJB 组件中封装任何存储过程。甚至可以在 EJB 客户机中使用一个通用的编码模式,来处理任何从封装器方法返回的结果。
回顾开发任务 我们来讨论一下使用通用编码模式,来集成 EJB 组件和 DBMS 存储过程的步骤: 确定要将哪个存储过程封装成 EJB 方法。如果该过程不存在,则遵循 DBMS 标准过程来创建和调试。 确定要使用哪个无状态会话 EJB 组件。如果该 EJB 不存在,则遵循 Java 开发环境的标准过程来创建和调试。 扩展 EJB 组件的远程接口,以包括用于封装存储过程的新方法。 扩展 EJB 组件的实现,以包括封装存储过程的新方法的逻辑。连接到数据库、调用存储过程、处理所有结果集和处理所有异常是后面要解决的问题。 通过构建一个客户机应用或 Servlet,来调用 EJB 组件封装器方法,以测试所做的工作。 头两项是基本编程任务,您可能已经熟悉。根据所用产品的不同,个别步骤可能会略有不同,但是大多数产品都有工具来提供帮助。例如,如果正在使用 VisualAge for Java 和 DB2,则可以利用“存储过程构建器”来完成步骤 1,以及利用 EJB 开发特性来完成步骤 2。本文将不集中讲述头两步。但是,其余三步需要详细讲解。本文将在一个实际示例的环境下讨论这些步骤中的每一步。 将存储过程封装为EJB组件的方法(2)时间:2010-09-28浏览应用方案 假设需要构建一个应用,该应用支持一家公司的市场营销分部,该分部维护面向金融的 Web 站点。该站点允许人们注册为客户,跟踪他们的投资总额,以及在电子公告板上发表意见。另外还假设,支持该站点的数据存储在 DB2 的表中。以下代码样本显示如何创建这些表。 在 DB2 中创建样本表的 SQL 语句
该数据库还包含一个特别重要的存储过程。过程 CLIENTREPORT 提供注册站点用户的综合概要,包括用户投资和他们在公告板上讨论的问题。这个报告还包括客户名称和电子邮件地址,以便在用户提出有关有潜在价值的附加产品或服务方面的建议时,市场营销人员可以与这些用户联络。要在会话 EJB 组件中封装的就是这个过程。 因为此过程可能用多种语言(包括 Java 编程语言)编写,这里就不显示它的完整内容。不管怎么说,源代码确实不那么重要,因为您不能假设总是可获得它们。但是,为了告诉您存储过程有什么内容,这里显示了它包括的三个 SELECT 语句: CLIENTREPORT 存储过程中的 SQL 语句: select name, e-mail from client where id = ? select id, ticker, cost, qty, date from portfolio where clientid = ? select msgno, subject, date from boards where clientid = ? 问号表示,该语句将依赖运行时来自调用程序的输入,在这种情况下,调用程序必须提供一个代表感兴趣的客户标识的有效数据值。通过这些语句,您可以猜出,存储过程将需要一个输入参数(用于客户标识),返回两个输出参数(用于客户名称和电子邮件地址),并返回两个结果集(一个包含有关客户投资总额的数据,另一个包含有关客户公 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |