我现在有java一个程序   要实现数据的上传和下载
客户端一个oracle数据库 中心端一个oracle数据库
现在每天需要把客户端的数据上传到中心端
采用什么方法好呢!我现在想把数据导成txt文件  然后上传到中心端 然后中心端在导进数据库
但是现在不知道怎么才能在java中把oracle数据库的表导出来了
请高手指点一下
用什么方法能更好的实现这样的功能呢?

解决方案 »

  1.   

    我现在想知道怎么用java把oracle数据库的表导出来?
      

  2.   

    这是数据迁移,是ETL的工作
    找一个etl的工具
    比如Oracle自带的ETL工具OWB,还有很多免费的etl工具
    建一个迁移的任务,设定为每天定时执行
      

  3.   

    用etl工具就可以完成你的工作,为什么要用java去写程序呢
    如果你一定要用java实现,可以用java调用调用cmd命令导入,导出,用cmd导入,导出数据库你会吧,不过那样的话,两个数据库必须完全一致
      

  4.   

    java 调用dos命令:
    Runtime.getRuntime().exec("exp username/psw@TEST file= d:test.dmp tables=(grid1,grid2)"); 
      

  5.   

    数据库表本身是以xml方式存储 可以把它导成XML形式
    使用DOM方式,Java解析XML基本步骤: 
    首先,我们需要建立一个解析器工厂。 
    DocumentBuilderFactory   dbf=DocumentBuilderFactory.newInstance(); 
    然后可以利用这个工厂来获得一个具体的解析对象。 
    DocumentBuilder   builder=dbf.newDocumentBuilder(); 
    DocumentBuilder的Parse()方法接受一个XML文档名作为输入参数,返回一个Document对象。Document对象代表了   一个XML文档的树模型。 
    Document   doc=builder.parse( "candiate.xml "); 
    使用Document对象的getElementsByTagName()方法,我们可以得到一个NodeList对象,他是XML文档中的标签元素   列表,可以使用NodeList对象的item()方法来得列表中的每一个Node对象。 
    NodeList   nl=doc.getElementsByTagName( "PERSON "); 
    Element   node=(Element)nl.item(i); 
    最后,我们会使用Node对象的getNodeValue()方法提取某个标签内的内容。 
    node.getElementsByTagName( "NAME ").item(0).getFirstChild().getNodeValue() 
      

  6.   

    来学习可以用windows的定时任务
    不一定非要java做的
      

  7.   

    你这个非要使用.txt格式吗?如果不是必须的那么9楼使用.xml的方法倒是不错。