|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
C#是不行的,比如说美国的航天飞船里就有java开发的程序以上是我的愚见,其实不管那种语言,你学好了,都能找到好的工作,
集成Web使用服务器和数据库办理(DBMS)手艺是良多新型贸易使用的罕见需求。在本文中,我们将会商该集成的一个方面:怎样在会话EnterpriseJavaBeans(EJB)组件中计划与开辟封装或挪用现有DBMS存储历程的办法。您应当熟习EJB手艺、布局化查询言语(SQL)和Java数据库毗连(JDBC)的基础常识,以便充实了解本文。
假如您正努力于必要会见或修正在DMBS中数据的Web使用程序开辟,那末大概已在向基于EJB的计划转移。您大概会发明,经由过程使会话EJB组件使用DBMS存储历程,能够削减编码和保护事情,并大概进步数据会见功能。
一些公司多年来一向在利用存储历程(storedprocedure),很年夜水平上是由于它们能够匡助削减收集通讯量,并进步散布式盘算情况中的功能。一般,这些历程包括触及多半据库操纵的主要营业逻辑。远程使用程序挪用这些历程,在DMBS服务器上实行它们所包括的SQL语句。固然,历程停止时,一切了局都前往给使用程序。
这些旧有存储历程对Web使用一般是有效的。与其在EJB组件中复制这些逻辑,为何不将这些历程作为办法封装在会话bean中呢?如许能够制止DBMS服务器和EJB组件中的冗余代码--在思索开辟、调试和保护开支时,冗余代码将消耗开辟效力。这还大概带来进步功能的优点。挪用存储历程能够削减EJB组件底本不能不收回的SQL语句数目,从而削减与远程DBMS的通讯开支。
进门
如今分明为何要从会话bean挪用存储历程了吧,上面我们看看怎样入手下手。起首,必要利用得当的开辟情况,该情况应当包含一个带有内置EJB撑持的Java开辟工具,一个Web使用服务器和一个干系DBMS。我的参考设置包含VisualAgeforJava企业版3.0.2,WebSphereApplicationServer初级版3.0.2.1,和DB2V7.1,一切这些都安装在一个WindowsNT体系上。有关怎样设置该情况以撑持本文所述事情的具体信息,请参阅"LeveragingDBMSStoredProceduresthroughEnterpriseJavaBeans"(位于参考材料中)或参考产物手册。
有了准确的软件情况,就能够入手下手了。固然我们要会商的编码形式大概合适于无形态会话(statelesssession)bean,但它也可以使用有形态会话(statefulsession)bean组件。可是,由于无形态会话bean比有形态会话bean损耗的体系资本更少,并且触及的代码也更少,以是一般倡议利用无形态会话bean。
起首要思索的计划成绩是怎样在存储历程和EJB组件之间映照数据。存储历程大概必要多个输出、输入和输出/输入参数,并前往一个或多个了局集(代表数据行)。除非要对分歧范例的历程利用分歧的编码形式,您必要编写EJB组件以便处置一切这些大概性。
处置输出(大概输出/输入)参数很复杂:将存储历程必要的每一个参数映照成EJB组件的输出参数。可是,处置存储历程的输入对照辣手。大概有多个输入参数和多个了局集要传回挪用程序,必要将这些作为一个可序列化的对象前往,以切合EJB标准。能够编写本人的类,使其能够将这些数据打包成一个对象,并在该对象中包含一切必需的元数据。(该元数据将形貌对象的外部布局,以便客户机晓得怎样处置。)但这必要大批事情。
假如正在利用VisualAgeforJava和WebSphere,那末,有个更好的选项:利用它们的数据会见Bean(DAB)库。该库包括一些供应位于基础JDBC之上的函数层的类。大概会发明com.ibm.db.CallableStatement类出格便利,由于它同意创立一个可序列化的对象,该对象包括一切从存储历程前往的输入,包含多个了局集(假如有的话)和相干元数据。另有一个优点是,该库计划成能够撑持任何撑持JDBC的数据源,因而,它可使bean“与DBMS有关”。有了DAB库,就能够用一个编码形式在会话EJB组件中封装任何存储历程。乃至能够在EJB客户机中利用一个通用的编码形式,来处置任何从封装器办法前往的了局。
回忆开辟义务
我们来会商一下利用通用编码形式,来集成EJB组件和DBMS存储历程的步骤:
断定要将哪一个存储历程封装成EJB办法。假如该历程不存在,则遵守DBMS尺度历程来创立和调试。
断定要利用哪一个无形态会话EJB组件。假如该EJB不存在,则遵守Java开辟情况的尺度历程来创立和调试。
扩大EJB组件的远程接口,以包含用于封装存储历程的新办法。
扩大EJB组件的完成,以包含封装存储历程的新办法的逻辑。毗连到数据库、挪用存储历程、处置一切了局集和处置一切非常是前面要办理的成绩。
经由过程构建一个客户机使用或Servlet,来挪用EJB组件封装器办法,以测试所做的事情。
头两项是基础编程义务,您大概已熟习。依据所用产物的分歧,一般步骤大概会略有分歧,可是年夜多半产物都有工具来供应匡助。比方,假如正在利用VisualAgeforJava和DB2,则能够使用“存储历程构建器”来完成步骤1,和使用EJB开辟特征来完成步骤2。本文将不会合报告头两步。可是,其他三步必要具体解说。本文将在一个实践示例的情况下会商这些步骤中的每步。
<p>
主要缺点就是:速度比较慢,没有C和C++快 |
|