package test;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Date; public class JDBCTest { public static void main(String[] args) { // 驱动程序名
String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名
String url = "jdbc:mysql://172.33.0.190:3306/report"; // MySQL配置时的用户名
String user = "root"; // MySQL配置时的密码
String password = "123456"; try {
Class.forName(driver); Connection conn = DriverManager.getConnection(url, user, password); if (!conn.isClosed())
System.out.println("Succeeded connecting to the Database!"); Statement statement = conn.createStatement(); // String showTables = "show tables";
//
// ResultSet rs = statement.executeQuery(showTables);
//
// System.out.println("-----------------");
ResultSet rs=null; List tableLists = new ArrayList();
//tableLists.add("rpt_ci_cinema_summary_dt");
//tableLists.add("bm_ykfp_cinema_film_hall_ticket_dt");
//tableLists.add("rpt_fm_cinema_film_ticket_dt");
//tableLists.add("rpt_ci_cinema_hall_ticket_dt");
//tableLists.add("rpt_ci_cinema_payment_ticket_dt");
//tableLists.add("rpt_shop_cinema_goods_trade_dt");
//tableLists.add("rpt_shop_cinema_goods_chanl_trade_dt"); //tableLists.add("rpt_shop_cinema_goods_item_trade_dt");
//tableLists.add("rpt_shop_cinema_goods_combo_item_trade_dt");
//tableLists.add("rpt_fm_cinema_film_summary_dt");
tableLists.add("rpt_memb_cinema_membcard_addmoney_detail");
System.out.println(tableLists); /*while (rs.next()) {
String name = rs.getString(1);
if (name.startsWith("rpt") && name.endsWith("dt") && name.indexOf("_tr_") == -1)
tableLists.add(name);
}*/ // list2.stream().forEach(key -> System.out.println(key));
tableLists.stream().forEach(System.out::println); System.out.println("-----------------"); List dateLists = new ArrayList(); Date d1 = new SimpleDateFormat("yyyyMMdd").parse("20150101");//定义起始日期
Date d2 = new SimpleDateFormat("yyyyMMdd").parse("20160801");//定义结束日期
Calendar dd = Calendar.getInstance();//定义日期实例
dd.setTime(d1);//设置日期起始时间
while(dd.getTime().before(d2)){//判断是否到结束日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
java.lang.String str = sdf.format(dd.getTime());
System.out.println(str);//输出日期结果
dd.add(Calendar.DATE, 1);//进行当前日期加1
dateLists.add(str);
}
/*for (int i = 20160101; i < 20160132; i++) {
dateLists.add(String.valueOf(i)); }*/
System.out.println("-----------------" + dateLists.size());
dateLists.stream().forEach(System.out::println); for (int k = 0; k <dateLists.size(); k++) {
String dateStr=(String)dateLists.get(k);
System.out.println("----------" + dateStr); for (int j = 0; j < tableLists.size(); j++) { String tableName = (String) tableLists.get(j); String descTable = "desc " + tableName; rs = statement.executeQuery(descTable); List columnNameList = new ArrayList(); while (rs.next()) {
String name = rs.getString(1);
if (name != null)
columnNameList.add(name);
}
System.out.println("-----------------"); // String sqlSelect = "select * from
// "+"rpt_ci_cinema_chanl_new_trade_dt";
// String sqlInsert = "insert into student (Name,Sex,Age)
// values(?,?,?)"; String insertTable = "replace into" + " " + tableName + " " + "( ";
int columnNameSize = columnNameList.size();
for (int i = 0; i < columnNameSize; i++) {
insertTable += columnNameList.get(i);
if (i != columnNameSize - 1)
insertTable += ",";
}
insertTable += " )"; // ******Need change the date "20160502" to dateStr
insertTable += " select '"+ dateStr +"' AS BIZDATE,"; for (int i = 1; i < columnNameSize; i++) {
insertTable += columnNameList.get(i);
if (i != columnNameSize - 1)
insertTable += ",";
} insertTable += " from " + tableName + " where biz_date='20160601' "+";"; System.out.println("" + insertTable); statement.execute(insertTable); System.out.println("--####Finished execute insert into table : " + tableName);
} } rs.close();
conn.close(); } catch (ClassNotFoundException e) { System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally{
System.out.println("********************All Completed*****************");
}
}
}

  

最新文章

  1. Java开发中的23种设计模式详解(转)
  2. 一个难倒 3年 android开发经验 &quot; 工程师 &quot; 的 &quot;bug&quot;
  3. Python-4 变量、字符串
  4. ecshop 影响全局的标量lib_main.php
  5. ffmpeg-20160701-git-bin.7z
  6. iOS注册collcetionViewFlowLayout
  7. 使用Burpsuite破解Webshell密码
  8. iOS系统下 的手机屏幕尺寸 分辨率 及系统版本 总结
  9. 初识AM335X
  10. 03--理解HelloWorld结构
  11. haproxy 超时自动重发
  12. 华为ensp模拟某公司网络架构及配置详解
  13. 软件测试基础(软件测试分类和工具组)firebug、firepath的安装
  14. ueditor精简插件和减少初次加载文件的方法
  15. ASP.NET CORE Linux发布工具(文件对比 只上传差异文件;自动启停WebServer命令;上传完成自动预热WebServer)
  16. PHPstorm快捷键Ctrl + Alt + Left 或Right不起作用
  17. ZOJ - 3261 Connections in Galaxy War(并查集删边)
  18. Linux网络编程学习(三) ----- 进程控制实例(第三章)
  19. python day10作业答案
  20. buffers与cached

热门文章

  1. mongodb复制集里查看主从操作日志oplog
  2. lua_to_luac
  3. 复合词UVa10391(STL简单应用)
  4. 爬虫5_python2_使用 Beautiful Soup 解析数据
  5. spark 省份次数统计实例
  6. Java异常 Exception类及其子类
  7. Web字节码(WebAssembly) Emscripten编译器安装
  8. Linux菜鸟起飞之路【三】Linux常用命令
  9. CSS3-transform3D
  10. TB平台搭建之二