Newer
Older
irisDatabase / src / com / casic / birmm / InsertIntoTbl.java
TAN YUE on 9 Oct 2020 2 KB 20201008 初始建立
package com.casic.birmm;

import com.casic.birmm.util.ConnectionManager;
import com.casic.birmm.util.IdWorker;
import org.apache.commons.dbutils.DbUtils;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.log4j.Logger;

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class InsertIntoTbl {
    public static void main(String[] args) {
        Connection conn = null;
        Logger logger = Logger.getLogger(InsertIntoTbl.class.getName());

        String insertStr = "INSERT INTO tbl_iris_feature " +
                "(USERID, EYE_TYPE, LEFT_TMP, RIGHT_TMP, GROUPID) " +
                "VALUE (?, 3, ?, ?, 'default')";
        Object[] insertParams = new Object[3];

        IdWorker worker = new IdWorker(2);

        List<File> fileList = new ArrayList<File>(10);
        fileList.add(new File("D:\\temp\\20200813155336499-success.bmp"));
        fileList.add(new File("D:\\temp\\20200813163005565-success.bmp"));
        fileList.add(new File("D:\\temp\\20200813163151768-success.bmp"));
        fileList.add(new File("D:\\temp\\20200813163427973-success.bmp"));
        fileList.add(new File("D:\\temp\\20200813163431674-success.bmp"));
        fileList.add(new File("D:\\temp\\20200814160340449-success.bmp"));
        fileList.add(new File("D:\\temp\\20200817112637891-success.bmp"));
        fileList.add(new File("D:\\temp\\20200817112653598-success.bmp"));
        fileList.add(new File("D:\\temp\\20200819132658922-success.bmp"));
        fileList.add(new File("D:\\temp\\20200819132710961-success.bmp"));

        FileInputStream fs = null;
        BufferedInputStream bis = null;
        try {
            conn = ConnectionManager.getMySQLConnectionFromC3P0();
            conn.setAutoCommit(false);

            QueryRunner runner = new QueryRunner();

            for (int i = 0; i < 1000000; i++) {
                fs = new FileInputStream(fileList.get((int) Math.random() * 10));

                long id = worker.nextId();
                byte[] left = new byte[512];
                byte[] right = new byte[512];

                fs.read(left, (int) Math.random() * i, 512);
                fs.read(right, (int) Math.random() * i, 512);

                insertParams[0] = id;
                insertParams[1] = left;
                insertParams[2] = right;

                runner.update(conn, insertStr, insertParams);
            }
        } catch (Exception ex) {
            ex.printStackTrace();;
        } finally {
            try {
                DbUtils.commitAndClose(conn);
            } catch (SQLException e) {
                e.printStackTrace();
            }
        }
    }
}