岁月联盟 · 中国技术网 本站主页 | 安全认证 | 用户服务 | 技术论坛
新闻快报 | 新手学堂 | 黑客特区 | 程序语言 | 数 据 库 | 防 火 墙 | 路由交换 | 系统集成 | 服 务 器 | 存储备份 | 考试认证
Windows | Linux | Java | 协议分析 | 问题解答 | 进程大全 | 网页设计 | 多 媒 体 | 图库资料 | 软件下载 | 站内下载
  您现在的位置: 岁月联盟 >> Java >> XML >> XMLBeans >> Java正文
Java、XML与数据库编程实践 (三)
作者:未知 文章来源:本站整理 点击数: 更新时间:2007-7-22 23:16:19

  文件DbInput.java则是真正的数据拷贝部分:
  
  import java.sql.*;
  
  public class DbInput
  
  {
  
    Connection src=null;
  
    Connection dest=null;
  
    Connection connformax=null;
  
    ConnPara srcPara;
  
    ConnPara destPara;
  
    public DbInput(){}
  
    
  
    public void dbInit()
  
    {
  
      DbXmlParser xmlparser=new DbXmlParser("dbs.xml");
  
      srcPara=xmlparser.getSource();
  
      destPara=xmlparser.getDest();
  
      try {
  
        Class.forName("sun.jdbc.odbc.JdbcOdbcDriver" );
  
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
  
        src = DriverManager.getConnection( srcPara.getUrl(), srcPara.getUsername(),srcPara.getPassword());
  
        dest =DriverManager.getConnection( destPara.getUrl(), destPara.getUsername(),destPara.getPassword());
  
        connformax= DriverManager.getConnection( destPara.getUrl(), destPara.getUsername(),destPara.getPassword());
  
      }
  
      //捕获加载驱动程序异常
  
      catch ( ClassNotFoundException cnfex ) {
  
        System.err.println( "装载 JDBC/ODBC 驱动程序失败。" );
  
        cnfex.printStackTrace();
  
        System.exit( 1 ); // terminate program
  
      } catch ( SQLException ex )
  
      {
  
        System.err.println( "连接失败" );
  
        ex.printStackTrace();
  
        System.exit( 1 ); // terminate program
  
      }     
  
    }
  
    public void copyproduct()
  
    {
  
      Statement st=null;
  
      ResultSet rset=null;
  
      String sqlstr;
  
      try {
  
        //执行SQL语句
  
        String query = "select * from production";
  
        st = src.createStatement();
  
        rset = st.executeQuery(query);     
  
        int pid,ljid,cid,ciid;
  
        while(rset.next())
  
        {
  
        String pnumber=rset.getString(1);
  
        String ljnumber=rset.getString(2);
  
        String cnumber=rset.getString(3);
  
        //插入到产品表
  
        pid=getIdfromNumber("project","number",pnumber);
  
        if(pid==0) //插入一条新记录
  
        {
  
          pid=getMax("project");//System.out.println(pid);
  
          sqlstr="Insert into project(id,number) values("+pid+",'"+pnumber+"')";
  
          execute(destPara,sqlstr);
  
        }     
  
        //插入到零件表
  
        ljid=getIdfromNumber("product","number",ljnumber);
  
        if(ljid==0) //插入一条新记录
  
        {
  
          ljid=getMax("product");
  
          sqlstr="Insert into product(id,pid,number) values("+ljid+","+pid+",'"+ljnumber+"')";
  
          execute(destPara,sqlstr);
  
        }     
  
        //插入工具表
  
        cid=getIdfromNumber("componenttype","number",cnumber);
  
        if(cid==0) //插入一条新记录
  
        {
  
          cid=getMax("componenttype");
  
          sqlstr="Insert into componenttype(id,aid,number) values("+cid+","+ljid+",'"+cnumber+"')";
  
          execute(destPara,sqlstr);
  
        }          
  
        }
  
      }
  
      catch ( SQLException sqlex ) {
  
        sqlex.printStackTrace();
  
      }   
  
    }


  • 上一个Java:
  • 下一个Java:
  •  
    热门文章
    推荐文章
    关于我们 | 发展历程 | 网站地图 | 广告服务 | 招贤纳士 | 战略合作 | 友情链接 | 著作声明 | 联系我们
    Copyright © 2002-2007 SYUE All rights reserved.
    E_mail:Admin@Syue.Com 皖ICP备05004589号
    未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
    传世私服 传奇世界私服 天龙八部私服 bet365 传世私服 天龙八部私服 热血江湖私服 英雄合击传奇私服 热血江湖私服 bet365 bet365