oracle调用java(二)

2014-11-24 03:24:40 · 作者: · 浏览: 4
'java.io.FilePermission', '<>', 'read ,write, execute,delete');
Dbms_Java.Grant_Permission('TIWEN','SYS:java.lang.RuntimePermission', 'writeFileDescriptor', '');
Dbms_Java.Grant_Permission('TIWEN','SYS:java.lang.RuntimePermission', 'readFileDescriptor', '');
end;

建立映射过程
CREATE OR REPLACE PROCEDUREhost_command (p_command IN VARCHAR2)
AS LANGUAGEJAVA
NAME'Host.executeCommand (java.lang.String)';

测试
DECLARE
l_output DBMS_OUTPUT.chararr;
l_lines INTEGER := 1000;
BEGIN
DBMS_OUTPUT.enable(1000000);
DBMS_JAVA.set_output(1000000);
host_command('dir g:\'); --执行显示目录的命令
DBMS_OUTPUT.get_lines(l_output, l_lines);
FOR i IN 1 .. l_lines LOOP
DBMS_OUTPUT.put_line(l_output(i));
NULL;
END LOOP;
END;


摘自 田文的专栏