服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > 数据库技术 > Oracle技术 > Oracle开发 > 查看文档

如何在oracle数据库中使用java存储过程

【赛迪网-it技术报道】本文以oracle为例,介绍一下java存储过程的具体用法。

一、如何创建java存储过程?

通常有三种方法来创建java存储过程。

1. 使用oracle的sql语句来创建:

e.g. 使用create or replace and compile java source named "" as

后边跟上java源程序。要求类的方法必须是public static的,才能用于存储过程。

sql> create or replace and compile java source named "javademo1"

2 as

3 import java.sql.*;

4 public class javademo1

5 {

6 public static void main(string[] argv)

7 {

8 system.out.println("hello, java demo1");

9 }

10 }

11 /

java 已创建。

sql> show errors java source "javademo1"

没有错误。

sql> create or replace procedure javademo1

2 as

3 language java name 'javademo1.main(java.lang.string[])';

4 /

过程已创建。

sql> set serveroutput on

sql> call javademo1();

调用完成。

sql> call dbms_java.set_output(5000);

调用完成。

sql> call javademo1();

hello, java demo1

调用完成。

sql> call javademo1();

hello, java demo1

调用完成。

2.使用外部class文件来装载创建

e.g. 这里既然用到了外部文件,必然要将class文件放到oracle server的某一目录下边。

public class oraclejavaproc

{

public static void main(string[] argv)

{

system.out.println("it's a java oracle procedure.");

}

}

sql> grant create any directory to scott;

授权成功。

sql> conn scott/tiger@iihero.oracledb

已连接。

sql> create or replace directory test_dir as 'd:\oracle';

目录已创建。

sql> create or replace java class using bfile(test_dir, 'oraclejavaproc.class')

2 /

java 已创建。

sql> create or replace procedure testjavaproc as language java name 'oraclejavaproc.main(java.lang.string[])';

2 /

过程已创建。

sql> call testjavaproc();

调用完成。

sql> execute testjavaproc;

pl/sql 过程已成功完成。

sql> set serveroutput on size 5000

sql> call dbms_java.set_output(5000);

调用完成。

sql> execute testjavaproc;

it's a java oracle procedure.

扫描关注微信公众号