一个基于JDBC的MySql数据迁移工具类

没有什么参考性,大概只适合我当前的场景:
1.数据源为一个,目标数据库3个
2.表按城市划分
3.从一个model表中提取建表语句,model表是所有对应城市的表的数据类型以及索引的模板
4.先建表,再插入数据

不过还是记下来免得以后需要时还得再写一次
Java代码 复制代码 收藏代码
  1.   
  2. public class DataMigration {   
  3.     static Connection connSrc = null;   
  4.     static Connection connDst[] = new Connection[3];   
  5.     static String[] CITY_CODE = {   
  6.         "bj""cd""chc""chsh""cq""dl""fzh""gy""gz""hrb",   
  7.         "hz""jn""km""lzh""nb""nch""nj""qd""sh""shjzh",   
  8.         "sy""sz""szh""tj""wh""wlmq""wx""xa""xm""zhzh"  
  9.         };   
  10.     static Map<String, String> TABLES = new HashMap<String, String>();   
  11.     static Map<String, List<String>> FIELDS = new HashMap<String, List<String>>();   
  12.     static {   
  13.         try {   
  14.             Class.forName("org.gjt.mm.mysql.Driver");   
  15.             connSrc = DriverManager.getConnection("jdbc:mysql://XXX:3306/XXX?useUnicode=true&characterEncoding=UTF-8""XXX""XXX");   
  16.             connDst[0] = DriverManager.getConnection("jdbc:mysql://XXX:3306/XXX?useUnicode=true&characterEncoding=UTF-8""XXX""XXX");   
  17.             connDst[1] = DriverManager.getConnection("jdbc:mysql://XXX:3306/XXX?useUnicode=true&characterEncoding=UTF-8""XXX""XXX");   
  18.             connDst[2] = DriverManager.getConnection("jdbc:mysql://XXX:3306/XXX?useUnicode=true&characterEncoding=UTF-8""XXX""XXX");   
  19.         } catch (Exception e) {   
  20.             e.printStackTrace();   
  21.         }   
  22.         TABLES.put("_XXX""XXX_model");   
  23.         TABLES.put("_YYY""YYY_model");   
  24.         TABLES.put("_ZZZ""ZZZ_model");   
  25.         TABLES.put("_UUU""UUU_model");   
  26.     }   
posted on 2013-02-17 13:59  蜜雪薇琪  阅读(353)  评论(0编辑  收藏  举报