gpt4 book ai didi

java - 从 Java 运行 Oracle import 命令并查看控制台输出

转载 作者:行者123 更新时间:2023-12-01 13:33:17 27 4
gpt4 key购买 nike

我正在为 .dmp 文件运行 Oracle 数据库命令,如下所示:

String impcmd = "imp askul/askul@askdb file=mydumpfile.dmp log=mylogfile.log fromuser=askul touser=askul full=N ignore=Y grants=Y indexes=Y";
Process p = Runtime.getRuntime().exec(impcmd);
p.waitFor();
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = br.readLine();
while(line != null){
System.out.println(line);
line = br.readLine();
}

数据库导入在后台进行得很好,但我希望能够在导入过程中看到控制台输出,因为我现在必须猜测它是否完成。我在这里缺少什么?

最佳答案

您需要在单独的线程中捕获 stdout 和 stderr(以防止阻塞)并在获取时输出它,同时等待进程完成

请注意,您可能需要读取 stdout stderr。或者您的输出可能会转至配置的日志文件。

参见this answer了解更多信息和示例代码引用。另请检查this article ,其中讨论了使用 Runtime.exec() 时的常见陷阱

关于java - 从 Java 运行 Oracle import 命令并查看控制台输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21433706/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com