我在jsp里使用:
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("exp scott/tiger file = c:\mybak.dmp");代码备份数据库,文件生成了,但是大小到2048字节就不动了,要等很久或者吧tomcat停止,文件才正式生成。不知道是什么原因,我在后面加了下面的代码:
try {
proc.waitFor();
}
catch (InterruptedException e) {
e.printStackTrace();
}
还是一样不行,请问高手怎么回事啊?
Runtime rt = Runtime.getRuntime();
Process proc = rt.exec("exp scott/tiger file = c:\mybak.dmp");代码备份数据库,文件生成了,但是大小到2048字节就不动了,要等很久或者吧tomcat停止,文件才正式生成。不知道是什么原因,我在后面加了下面的代码:
try {
proc.waitFor();
}
catch (InterruptedException e) {
e.printStackTrace();
}
还是一样不行,请问高手怎么回事啊?
解决方案 »
- 不同的用户在页面上显示不同的模块
- 小弟正在学习JavaWeb开发,烦请各位推荐点资料
- JavaMail问题
- java Web jsf 验证用户名是否为空
- 更改JDBC后想改回来,就报这种500的错误,该怎样解决啊。请教高手。
- struts.xml文件inlude标签通配符的问题!!
- 用jsp写的程序总出现这样的错误,怎么解决啊。呜呜。。快救我呀。
- tomcat5.09下servlet放哪个目录,怎么我怎么放都找不到?
- 我想通过Servlet返回GIF图片,请问有几种办法~~能具体说说吗?在线等
- 请问如何将byte[]转化为int?
- 如何在页面中引入XML文件??
- 请教如何设置cookie并实现页面的跳转
把跟目录放到tomcat的盘
而且你是不是应该这样调用:
String command = "cmd.exe /C exp 用户名/密码@数据库 file='"+fname+"'";
try
{
Process child = Runtime.getRuntime().exec(command);
}
catch (IOException e)
{
e.printStackTrace();
}
boolean shouldClose=false;
try {
InputStreamReader isr = new InputStreamReader(proc.getErrorStream());
BufferedReader br = new BufferedReader(isr);
String line = null;
while ((line = br.readLine()) != null){
if(line.indexOf("错误")!=-1){
shouldClose=true;
break;
}
}
//System.out.println(line);
}
catch (IOException ioe) {
shouldClose=true;
}
if(shouldClose)
proc.destroy();