写个java存贮过程,用java调用OS的.execreate or replace and resolve java source named "ExpBackupSysCmd" as import java.io.*; public class ExpBackupSysCmd { public ExpBackupSysCmd() { } public static void back(){ String fileName=""; fileName=Long.toString(System.currentTimeMillis()); try{ Process p=Runtime.getRuntime().exec(".\\Debug\\listmgr.exe"); -- 调用exe ....... }catch(Exception e) {System.err.println(e.getMessage());} } public static void main(String[] args) { ExpBackupSysCmd sysCmd1 = new ExpBackupSysCmd(); sysCmd1.back(); } } ; /--创建调用备份的存储过程 create or replace procedure ExpBackup as language java name 'ExpBackupSysCmd.back()'; /
named "ExpBackupSysCmd" as
import java.io.*;
public class ExpBackupSysCmd { public ExpBackupSysCmd() {
} public static void back(){
String fileName="";
fileName=Long.toString(System.currentTimeMillis());
try{
Process p=Runtime.getRuntime().exec(".\\Debug\\listmgr.exe"); -- 调用exe
.......
}catch(Exception e)
{System.err.println(e.getMessage());}
} public static void main(String[] args) {
ExpBackupSysCmd sysCmd1 = new ExpBackupSysCmd();
sysCmd1.back();
}
}
;
/--创建调用备份的存储过程
create or replace procedure ExpBackup
as language java
name 'ExpBackupSysCmd.back()';
/
1.知道如何编写及运行java存贮过程.
2.知道在java里如何调用.exe.自己动手吧,祝你成功.
Process p=Runtime.getRuntime().exec("c:\\7zip.exe");
7zip.exe这个文件并没有执行啊
执行call expbackup()时也没有新建123.txt 这个文本文件,是我没有JAVA环境造成的?
import java.io.*;
public class Cmd {
public static boolean cmdExecute(String cmd) {
Process proc=null;
int exitValue;
try {
System.out.println(cmd);
proc=Runtime.getRuntime().exec(cmd);
exitValue=proc.waitFor();
return (exitValue==0);
} catch(Exception e){
System.out.println("Failure:"+e.getMessage());
return false;
}
}
public static boolean cmdExecute(String cmd,int interCmd) {
if (interCmd==1)
{
return cmdExecute("C:\\Windows\\System32\\cmd.exe /c /y "+cmd);
}
else
{
return cmdExecute(cmd);
}
}
public static void main(String args[]) {
String cmd="";
for(int i=0;i<args.length;i++)
cmd+=" "+args[i];
cmdExecute(cmd,1);
}
}
/*
create or replace procedure cmdExecute(cmd varchar2) as language java name 'DiffCmd.cmdExecute(java.lang.String)';
exec dbms_java.grant_permission( 'SYSTEM', 'SYS:java.io.FilePermission','G:\waitfor.exe', 'execute')
EXEC Dbms_Java.Grant_Permission('SYSTEM', 'java.io.FilePermission', '<>', 'read ,write, execute, delete');
EXEC Dbms_Java.Grant_Permission('SYSTEM', 'SYS:java.lang.RuntimePermission', 'writeFileDescriptor', '');
EXEC Dbms_Java.Grant_Permission('SYSTEM', 'java.io.FilePermission', 'G:\*', 'read,write,delete');
exec dbms_java.grant_permission( 'SYSTEM', 'SYS:java.io.FilePermission','C:\Windows\system32\cmd.exe', 'execute')
exec dbms_java.grant_permission( 'SYSTEM', 'SYS:java.io.FilePermission','G:\bb.bat', 'execute')
EXEC Dbms_Java.revoke_Permission('SYSTEM', 'java.io.FilePermission', 'G:\*', 'read,write,delete');
EXEC Dbms_Java.revoke_Permission('SYSTEM', 'java.io.FilePermission', '<>', 'read ,write, execute, delete');
*/