2019年08月19日(星期一)  农历:己亥年七月十九

作者:三年。分类: JAVA

javamysql导出数据例子,代码:

/*

*    www.zengto.com

*    www.echohoo.com

*    www.23-3.com

*

*/

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;

}

}

温馨提示如有转载或引用以上内容之必要,敬请将本文链接作为出处标注,谢谢合作!

已有 0/1882 人参与

发表评论:



手Q扫描加入Java初学者群