Função backup em java

Alguém sabe como desenvolver uma classe para fazer backup do banco de dados ?
Preciso Urgente, nem sei por onde começar.

Para backup no banco postgre:

    public class Backup {  
        public void realizaBackup(){  
            Runtime r = Runtime.getRuntime();              
            try{  
                Process p = r.exec(" \"C:\\Arquivos de programas\\PostgreSQL\\8.0\\pgAdmin III\\pg_dump.exe\" -i -h localhost -p 5432 -U user -F c -b -v -f \"C:\\backup\\bancodados.backup\" seubanco");  
                if(p != null){  
                    OutputStream outputStream = p.getOutputStream();  
                    outputStream.write("suasenha\r\n".getBytes());  
                    outputStream.flush();  
                   outputStream.close();  
                   InputStreamReader streamReader = new InputStreamReader( p.getErrorStream() );  
                   BufferedReader reader = new BufferedReader( streamReader );  
                   String linha;  
                   while( (linha = reader.readLine()) != null )  
                       System.out.println(linha);  
               }  
           } catch(IOException ioe){  
               ioe.printStackTrace();  
           }  
       }  
   }  


Já é o bom começo, posso chamar este código em um evento?, e para mysql, é somente mudar o diretório do dumo? Valeu pela ajuda.

Sim é so chamar em um evento,no mysql eu naum tenho ideia de como e feito backup pois nunca usei o mysql,mas naum deve ser algo mto distante disso.

axei isso:
http://www.guj.com.br/posts/list/45184.java

e isto
http://forums.sun.com/thread.jspa?threadID=5391254
talvez ajude

Valeu, vou testar aqui!