论坛首页 Java企业应用论坛

写一个java的存储过程调用dos命令

浏览 3732 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-06-08  

1:编写java代码:(c:\\JavaPro.java)                                      

public class JavaPro {
       public static void main(String[] s){test();}
       public static  void test(){
         Runtime r = Runtime.getRuntime();
         Process p = null;
         try
         { 
         p=r.exec("cmd /c copy  c:\\JavaPro.java  c:\\test.txt");      //直接执行一个dos命令
         p=r.exec("c:\\dir.bat");                                                            //执行一个批处理
         }
         catch(Exception e)
         {
             System.out.println("err");
         }
       }
    }
   
2:在dos下运行下面命令:
  c:\> loadjava -user hch/hch@ora -o -v -f -r c:\JavaPro.java


3:编写存储过程:
  create or replace procedure java_pro  as language java name
  'JavaPro.test()';


4:执行存储过程
  exec java_pro;

 问题,上面代码可以单独运行,但在存储过程中没有效果,希望得到高手解答。

   发表时间:2007-06-08  
能print系统PATH一下么,cmd没有PATH肯定玩不转。默认系统已经映射了C:\WINDOWS;C:\WINDOWS\system32;,可能你存储过程中的PATH是空的。
猜想而已,给楼主提供点思路。
0 请登录后投票
   发表时间:2007-06-08  
非常谢谢,闲下来再研究一下!
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics