预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共11页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

JAVA与Oracle存储过程2 2009年08月11日星期二上午10:30 在前一篇文章中简单介绍了JAVA程序如何调用Oracle存储过程的基本语法程序结构,本文将介绍JAVA跟Oracle的另一种关系,即通过JAVA编写Oracle存储过程。通常情况下,我们都是使用Oracle数据库系统中的ps/sql语句来为oracle编写各种存储过程,不过,在Oracle的第八个版本8之后,为我们提供了编写存储过程的另一种新的选择,那就是使用JAVA来编写Oracle存储过程。从Oracle8.0版本开始,在Oracle数据库系统中自带了java虚拟机jvm,因此使得Oracle内置了对JAVA的全面支持,我们在使用JAVA可以实现的任何功能现在都可以放到Oracle中来实现,当然我们也可以在oracle中来操作其他数据库。JAVA的加入让Oracle展能力得到了升华,我们可以定义一个触发器来在进行任何数据库操作的时候对外界进行其他操作的功能。下面准备举个例子来说明下如何通过JAVA来创建Oracle存储过程,例子不在于有多高级,功能不在于多完善,我想,如果能从一个简单例子,引申出去,去繁衍更多的方法,去实现更多你自己需要的功能,这才是简单例子的作用。二、使用JAVA创建Oracle存储过程先看下如何使用JAVA来编写Oracle存储过程,我们在Oracle的sqlplus中编写语句。Ⅰ、启动SQLPLUSⅡ、编写JAVA类,定义JAVA类别名,本存储过程为简单地输出传入参数的平方值。查看复制到剪切板打印createorreplaceandcompilejavasourcenamed"PF"as/***通过JAVA类来创建Oracle存储过程*/packageorg.oraclejava.pro;publicclassjavaCreatePro{publicstaticStringtest(intnum){returnnum+"的平方为:"+num*num;}}Ⅲ、将JAVA类中的方法test创建为一个Oracle函数方法查看复制到剪切板打印createorreplacefunctionPF_FUN(nameinteger)returnvarchar2aslanguagejavaname'org.oraclejava.pro.javaCreatePro.test(java.lang.Integer)returnjava.lang.String';Ⅳ、在控制台直接调用创建的Oracle函数selectPF_FUN(10)fromdual;Ⅴ、输出结果10的平方为:100以上即是在Oracle中的SQLPLUS中使用JAVA程序来产生Oracle存储过程的演示例子,演示了其基本语法的实现跟简单的功能实现,可以看出在JAVA跟Oracle之间存在很多有趣的用法,因为oracle中有java虚拟机,使得Oracle变得更加有趣更加丰富多彩。用Java开发Oracle存储过程 从Oracle8i开始,Oracle数据库就全面引入了实用的Java虚拟机–OracleJVM。Oracle和Java之间的这种紧密关系,使得一个非常重要的技术,出现在Oracle开发人员面前:Java存储过程。通过Java存储过程,开发人员在创建数据库应用的时候,就可以充分利用Java提供的各种优势。本文将针对这个越来越受欢迎的技术进行讨论。其目标读者是,初懂Oracle的Java开发人员和略知Java的OraclePL/SQL开发人员。在强调Java存储过程的好处之后,我将示例说明在应用开发中,如何使用它们。 Java存储过程的好处 在很多情况下使用Java存储过程是很有意义的。鉴于Java当前受欢迎的程度,这种情况是完全可能的,即越来越多的开发人员对于Java的熟练程度要好于PL/SQL。Java存储过程的出现,使得Java的开发人员可以用自己喜欢的语言来开发存储过程。对于有经验的PL/SQL开发人员,则可以利用Java语言的各种优点,来扩展数据库应用的功能。同时,Java使得编写独立于数据库的代码成为可能。更有意思的是,它允许你重用你已经存在的代码,从而大幅度地提高开发效率。 正如你将看到的,PL/SQL和Java可以在同一个应用中和谐共处,因此,大可不必非此即彼地选择其中之一。PL/SQL是一种针对Oracle数据库,经过高度优化的、优秀的过程语言,Java应用在Oracle数据库中运行也具有很好的扩展性。除此之外,通过OracleJVM来执行Java程序,可以充分利用高效的内存回收技术和线程管理方面的能力。 Java存储过程,StepbyStep 简单地说,Java存储过程就是Java类,以schema对象的形式存储,通过调用规范(callspec