import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class TestDB {
 
 
 public static void main(String[] args) {
  
  
  //Test();  // 生成测试数据
  //Exp();
  Exp(0);
  //System.out.println(readText("/opt/id.txt"));
 }
 
 /**
  * 导出数据
  */
  public static void Exp() {
  
   Connection Conn=null;

try {
   
    
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    String jdbcUrl = "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=GBK";
    //String jdbcUsername = "root";
    //String jdbcPassword = "mysql";
    Conn = DriverManager.getConnection(jdbcUrl, "root", "mysql");
    
    System.out.println("conn"+Conn);
    
    Exp(Conn);

} catch (SQLException e) {
    e.printStackTrace();
   }
   catch (InstantiationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   finally
   {
 
    try {
     Conn.close();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
 
  
  
  }
 
  public static void Exp(int startid) {
  
   Connection Conn=null;

try {
    
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    String jdbcUrl = "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=GBK";
    String jdbcUsername = "root";
    String jdbcPassword = "mysql";
    Conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword);
    
    System.out.println("conn"+Conn);
    
    Exp(Conn,startid);

} catch (SQLException e) {
    e.printStackTrace();
   }
   catch (InstantiationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   finally
   {
 
    try {
     Conn.close();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
 
  
  
  }
 
  /**
   * 导出从startid开始的数据
   * @param conn
   * @param start_id
   */
  public static void Exp(Connection conn,int start_id) {
  
   int counter = 0;
   int startid=start_id;
   boolean flag = true;
   while (flag) {
    flag = false;
    String Sql = "SELECT * FROM t_test WHERE id>"
      + startid + " order by id asc LIMIT 50";

System.out.println("sql===" + Sql);
    try {
     Statement stmt = conn.createStatement();
     ResultSet rs = stmt.executeQuery(Sql);

while (rs.next()) {
       flag = true;
       int id = rs.getInt("id");
       String title = rs.getString("title");
       startid = id ;

counter++;
       
       writeContent(counter+"--id--"+id+"--title-"+title+"\r\n", "D:\\","log.txt",true);
       
       System.out.println("i="+counter+"--id--"+id+"--title-"+title);
       
      }
 
 
     
     rs.close();
     stmt.close();
    } catch (SQLException e) {
     e.printStackTrace();
    }
   }
   
   writeContent(""+startid, "D:\\","id.txt",false);

}
 
 
 
  /**
   * 导出一小时内的数据
   * @param conn
   */
 
  public static void Exp(Connection conn) {
  
   int counter = 0;
   //一小时内的数据
   Long timestamp = System.currentTimeMillis() - (600 * 60 * 1000);
   boolean flag = true;
   while (flag) {
    flag = false;
    String Sql = "SELECT * FROM t_test WHERE createTime>"
      + timestamp + " LIMIT 50";

System.out.println("sql===" + Sql);
    try {
     Statement stmt = conn.createStatement();
     ResultSet rs = stmt.executeQuery(Sql);
     while (rs.next()) {
      flag = true;
      int id = rs.getInt("id");
      String title = rs.getString("title");
      Long lastmodifytime = rs.getLong("createTime");
      timestamp = lastmodifytime;

counter++;
      
      System.out.println("i="+counter+"--id--"+id+"--title-"+title);
      
     }
     rs.close();
     stmt.close();
    } catch (SQLException e) {
     e.printStackTrace();
    }
   }
  
  
  
  
  }
 
 
  public static void Test() {
 
   Connection Conn=null;

try {
    
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    String jdbcUrl = "jdbc:mysql://127.0.0.1:3306/test?characterEncoding=GBK";
    String jdbcUsername = "root";
    String jdbcPassword = "mysql";
    Conn = DriverManager.getConnection(jdbcUrl, jdbcUsername, jdbcPassword);
    
    System.out.println("conn"+Conn);
    
    for(int i=1;i<=10000;i++)
    {
     add(Conn,"testTitle"+i+"-"+System.currentTimeMillis());
    }

} catch (SQLException e) {
    e.printStackTrace();
   }
   catch (InstantiationException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   finally
   {
 
    try {
     Conn.close();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
 
  }

public static void add(Connection conn,String title)
   {
      PreparedStatement pstmt = null;
   String insert_sql = "insert into t_test(title,createTime) values (?,?)";
   
   System.out.println("sql="+insert_sql);
   try {
    pstmt = conn.prepareStatement(insert_sql);
    pstmt.setString(1,title);
    pstmt.setLong(2,System.currentTimeMillis());
    int ret = pstmt.executeUpdate();
  
   } catch (SQLException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
   }
   finally{
    try {
     pstmt.close();
    } catch (SQLException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    } 
   }

}
 
  /**
   * 写入内容到文件
   *
   * @param number
   * @param filename
   * @return
   */
  public static boolean writeContent(String c, String dirname,String filename,boolean isAppend) {
   
   File f=new File(dirname);
   if (!f.exists())
   {
     f.mkdirs();
   }
   
   try {
    FileOutputStream fos = new FileOutputStream( dirname+File.separator+filename,isAppend);
    OutputStreamWriter writer = new OutputStreamWriter(fos);
    writer.write(c);
    writer.close();
    fos.close();
   } catch (IOException e) {
    e.printStackTrace();
    return false;
   }
   return true;
  }
  
 
  /**
   * 从文件读取内容
   *
   * @param filename
   * @return
   */
  public static String readText(String filename) {
   String content = "";
   try {
    File file = new File(filename);
    if (file.exists()) {
     FileReader fr = new FileReader(file);
     BufferedReader br = new BufferedReader(fr);
     String str = "";
     String newline = "";
     while ((str = br.readLine()) != null) {
      content += newline + str;
      newline = "\n";
     }
     br.close();
     fr.close();
    }
   } catch (IOException e) {
    e.printStackTrace();
   }
   return content;
  }
}

java从mysql导出数据例子的更多相关文章

  1. 三十二、MySQL 导出数据

    MySQL 导出数据 MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上. 使用 SELECT ... INTO OUTFILE 语句导出数据 以下实例中 ...

  2. MySQL导出数据,并转存到Excel表格中

    从数据库中导出数据的方法,这里就不提了,网上有很多方法,如果闲麻烦,可以看一下这个:mysql导出数据 其实使用最简单的下面这个语句: mysql > select * from demo in ...

  3. --mysql 导出数据时, 数字类型的列如果位数过长,变为科学计数法问题

    --mysql 导出数据时, 数字类型的列如果位数过长,变为科学计数法问题在字段前加上\t即可select concat('\t',a.IDCARD_NO) from xxx a

  4. mysql 导出数据或结构

    mysql 导出数据或结构 语法说明 mysqldump -h 数据库地址 -u用戶名 -p密码 -d 数据库名 表名 > 脚本名; 导出整个数据库结构和数据 mysqldump -uroot ...

  5. MySQL导出数据到文件中的方法

    MySQL导出数据到文件中的方法 1.导出数据到txt文件中实例:把数据表studscoreinfo中所有数据导出到指定的位置方法:select * from 表名 into outfile 指定导出 ...

  6. MySQL 导出数据

    MySQL中你可以使用SELECT...INTO OUTFILE语句来简单的导出数据到文本文件上. 使用 SELECT ... INTO OUTFILE 语句导出数据 以下实例中我们将数据表 cnbl ...

  7. java用freemarker导出数据到word(含多图片)

    一.制作word模版 新建word文档,按照需要设置好字体等各种格式:这里为了显得整齐使用了无边框的表格. 将word文档另存为xml文件(注意不是word xml文档,我吃了这家伙的大亏了) 然后用 ...

  8. Java在mysql插入数据的时候的乱码问题解决

    今天在使用hibernate的时候,插入mysql的数据中的中文总是显示乱码,之前出现过类似的问题,但是没有太在意,今天又发生了.所以向彻底的解决一下. 参考的博文: http://www.cnblo ...

  9. mysql 导出数据导致锁表

    故事原由:今天同事小星做系统优化时问我一个sql问题,为什么查询慢,我看了一眼,发现用到了表A中的datetime类型列进行时间比较,建议他给datetime类型列加上索引. 可这是生产库,表A里面有 ...

随机推荐

  1. TDirectory.GetCreationTime、TDirectory.SetCreationTime获取和设置文件夹创建时间

    使用函数: System.IOUtils.TDirectory.GetCreationTime//获取创建时间 System.IOUtils.TDirectory.SetCreationTime//设 ...

  2. scrapy使用爬取多个页面

    scrapy是个好玩的爬虫框架,基本用法就是:输入起始的一堆url,让爬虫去get这些网页,然后parse页面,获取自己喜欢的东西.. 用上去有django的感觉,有settings,有field.还 ...

  3. 简单的网页采集程序(ASP.NET MVC4)

    因为懒人太多,造成现在网页数据采集非常的流行,我也来写个简单的记录一下. 之前写了MVC的基本框架的搭建随笔,后面因为公司太忙,个人感情问题:(,导致不想写了,就写了两篇给删除了,现在就搁浅了, 本人 ...

  4. C#网页自动登录和提交POST信息的多种方法(转)

    网页自动登录和提交POST信息的核心就是分析网页的源代码(HTML),在C#中,可以用来提取网页HTML的组件比较多,常用的用WebBrowser.WebClient.HttpWebRequest这三 ...

  5. leetcode 第五题 Longest Palindromic Substring (java)

    Longest Palindromic Substring Given a string S, find the longest palindromic substring in S. You may ...

  6. jQuery响应式幻灯片插件jquery.glide.js(支持触摸&轻量级)

    找到一款好的幻灯片插件不容易,找到一款功能全并且使用很简单的幻灯片更不容易,今天为大家分享一款全能的幻灯片插件glide.js,也是我现在在使用的一款插件. jquery.glide.js是响应和触摸 ...

  7. Hibernate 注解 动态插入( DynamicInsert) 动态更新(DynamicUpdate)

    @DynamicUpdate(value = true)@DynamicInsert(value = true) 这两个注解默认是false,经试验,如果使用了这两个注解,在一定程度上是可以提高插入和 ...

  8. linux使用su切换用户提示 Authentication failure的解决方法& 复制文件时,报cp: omitting directory `XXX'

    linux使用su切换用户提示 Authentication failure的解决方法:这个问题产生的原因是由于ubtun系统默认是没有激活root用户的,需要我们手工进行操作,在命令行界面下,或者在 ...

  9. 读书笔记-----Java并发编程实战(二)对象的共享

    public class NoVisibility{ private static boolean ready; private static int number; private static c ...

  10. Linux平台下Java调用C函数

    JNI是Java native interface的简写,可以译作Java原生接口.Java可以通过JNI调用C/C++的库,这对于那些对性能要求比较高的Java程序无疑是一个 福音. 使用JNI也是 ...