我们做的一个金融项目系统涉及到使用本地清算系统,因此需要将远程交易系统的数据库数据同步到本地系统中来。我们采用的是在交易低峰期通过将远程数据库中的数据生成csv文件,然后down下来装入到本地数据库中。
<pre name="code" class="java">
package com.blog.laishaobin.db;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class BlogTableToCSV {
/**
* @param tl 要生成csv文件的table名字列表
* @return 生成的文件的路径列表
* @throws Exception
*/
public List<String> startTableToCSV(List<String> tl) throws Exception{
List<String> fileList = new ArrayList<String>();
Connection conn = null;
Statement stmt = null;
try {
conn = new DBConnections(DBConnections.URL, DBConnections.USERNAME, DBConnections.PASSWORD).getConn();
conn.setAutoCommit(false);
stmt = conn.createStatement();
for (String t : tl) {
int count = 0;
String filename = generateFilename(t);
File file = createEmptyFile(filename);
FileWriter fw = ne