ITPub博客

首页 > 数据库 > Oracle > 编写JAVA存储过程

编写JAVA存储过程

原创 Oracle 作者:csbin 时间:2006-12-05 15:01:15 0 删除 编辑

 

用Java编写Oracle存储过程

关键字: Database

Oracle里可以使用多种语言来编写存储过程,比如Pro*C/C++,PL/SQL,COBOL,在Oracle8i开始支持用Java编写存储过程。

如果非要写存储过程的话,做为以Java谋生的我,首选用Java编写,用PL/SQL需要记忆很多的语法(Pascal类的语法)和函数,远不如使用Java/JDBC这么轻车熟路。而且,DB2等数据库都支持Java存储过程,所以不比为每一种数据学习一种编写存储过程的方法了。

Java存储过程与一般的JDBC程序有所不同的是:
1.有安全限制,毕竟是在oracle内部运行的,不允许访问操作系统的资源,如文件。
2.获取数据库联接方式,connection = new OracleDriver().defaultConnection();
3.System.out,System.err,System.in等输入输出有所不同。可以利用某些命令重定向。

下面用Java 存储过程写一个Hello World的例子。
1)在plsqldeveloper里,java source里增加一个TestJava1类,

代码
  1. create or replace and compile java source named TestJava1 as
  2. public class TestJava1
  3. {
  4. public static void test()
  5. {
  6. System.out.println("Hello");
  7. }
  8. }

执行它,以保存并编译。

2)增加一个procedure,执行如下命令:

代码
  1. create or replace procedure testJava1 as language java name 'TestJava1.test()';

3)在command window里输入

代码
  1. SET SERVEROUTPUT ON;
  2. CALL dbms_java.set_output(2000);

以使System.out重定向到当前窗口;
在command window里输入,exec testJava1();
即可看到结果:

Hello

PL/SQL procedure successfully completed

参考资料:
Oracle? Database Java Developer's Guide http://download-west.oracle.com/docs/cd/B19306_01/java.102/b14187/toc.htm
Sample:
http://www.oracle.com/technology/sample_code/tech/java/jsp/oracle9ijsp.html

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/720091/viewspace-881660/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 生活
请登录后发表评论 登录
全部评论

注册时间:2009-01-12

  • 博文量
    69
  • 访问量
    1461449