Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查是否创建了备份_Java_Database_Jsp_Jdbc - Fatal编程技术网

Java 检查是否创建了备份

Java 检查是否创建了备份,java,database,jsp,jdbc,Java,Database,Jsp,Jdbc,我正在尝试学习JSP/Servlets。。。我设法写了一个函数来备份整个数据库 package com.functions; import java.io.*; import java.io.IOException; //import java.sql.Connection; //import java.sql.PreparedStatement; //import java.sql.ResultSet; //import javax.servlet.RequestDispatcher; im

我正在尝试学习JSP/Servlets。。。我设法写了一个函数来备份整个数据库

package com.functions;

import java.io.*;
import java.io.IOException;
//import java.sql.Connection;
//import java.sql.PreparedStatement;
//import java.sql.ResultSet;
//import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

//import com.functions.utility.DBConnector;

public class addMarks3 extends HttpServlet {

    private static final long serialVersionUID = 8097085789553030042L;

    protected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {       

        System.out.println("--------------------");
        System.out.println(" On Backup.java ");
        System.out.println("--------------------");

            fetchDataFromDB(request,response);
    }

    private void fetchDataFromDB(HttpServletRequest request,HttpServletResponse response){


        try {
            Runtime runtime = Runtime.getRuntime();
            File backupFile = new File("C:/Users/Rohan/Desktop/LMS/backup.sql");
            FileWriter fw = new FileWriter(backupFile);
            Process child = runtime.exec("C:/Program Files (x86)/MySQL/MySQL Server 5.5/bin/mysqldump --user=root --password=root --lock-all-tables --opt dummy");
            InputStreamReader irs = new InputStreamReader(child.getInputStream());
            BufferedReader br = new BufferedReader(irs);

            String line;
            while( (line=br.readLine()) != null ) {
                fw.write(line + "\n");
            }
            fw.close();
            irs.close();
            br.close();
        } catch (IOException ex) {
            ex.printStackTrace();
        }

    }
}
我仍然不知道如何验证备份是否成功。。?? 如如何检查备份是否成功


PS:每次我运行该文件时,都会填充它

那么,如果每次都填充该文件,这不意味着备份成功了吗


您是否考虑过将流程流传输到响应流?

尝试这样做。检查文件大小

 File backupFile = new File("C:/Users/Rohan/Desktop/LMS/backup.sql");
 int len1=backupFile.length();
 FileWriter fw = new FileWriter(backupFile);

 Process child = runtime.exec("C:/Program Files (x86)/MySQL/MySQL Server 5.5/bin/mysqldump --user=root --password=root --lock-all-tables --opt dummy");
        InputStreamReader irs = new InputStreamReader(child.getInputStream());
        BufferedReader br = new BufferedReader(irs);
        String line;
        while( (line=br.readLine()) != null ) {
            fw.write(line + "\n");
        }
        fw.close();
        irs.close();
        br.close(); 

       int len2=backupFile.length();

       int compare=len2-len1;

          if(compare>0)
          {
            System.out.println("-- Backup done---");
          }