4.oracle中使用java存貯過程 4.1 Java類 public class Oscar { // return a quotation from Oscar Wilde public static String quote() { return 'I can resist everything except temptation.'; } } javac Oscar.java //編譯 4.22 加載java類 loadjava -user tt/bitservice Oscar.class; 4.3 發(fā)布java類 create or replace function oscar_quote return varchar2 AS LANGUAGE JAVA NAME 'Oscar.quote() return java.lang.String'; 4.4 調(diào)用java類 variable quote VARCHAR2(50); CALL oscar_quote() INTO :theQuote; PRINT theQuote; 具體實(shí)現(xiàn)如下: 1.在java source中創(chuàng)建如下的java類 create or replace and compile java source named Oscar as import java.lang.*; import java.io.*; public class Oscar { public static String entry() { return 'I can resist everything except temptation.'; } } 2.發(fā)布java類(相當(dāng)于給Java類中共用的類或方法創(chuàng)建一個(gè)pl/sql形式的別名,pl/sql通過該別名訪問對應(yīng)的java類) create or replace function oscar_quote return varchar2 AS LANGUAGE JAVA NAME 'Oscar.quote() return java.lang.String'; 3.對java類的使用 發(fā)布后的Java類(別名)可以用于pl/sql中的觸發(fā)器、函數(shù)、過程、包、子程序、匿名塊、單句sql。
|