欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java實(shí)現(xiàn)批量導(dǎo)入.csv文件到mysql數(shù)據(jù)庫

 更新時(shí)間:2020年08月27日 11:39:27   作者:Ma_Jack  
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)批量導(dǎo)入.csv文件到mysql數(shù)據(jù)庫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

這篇博文是在參加CCF時(shí)導(dǎo)入.csv文件時(shí)自己總結(jié)的,雖然NavicatForMysql可以導(dǎo)入.csv文件,可是當(dāng)我導(dǎo)入的時(shí)候不知道是文件太大還是什么原因,總是會(huì)出現(xiàn)失敗。然后就用java寫了一個(gè)批量導(dǎo)入數(shù)據(jù)的類去導(dǎo)入該.csv文件,這里也沒有考慮代碼的結(jié)構(gòu),只是為了快速的完成這個(gè)工作,做一個(gè)總結(jié)。

package com.cqu.price_prediction.farm;
 
import java.io.File;
import java.io.FileNotFoundException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
 
public class Read
{
 private static Connection con;
 
 public static void main(String[] args) throws FileNotFoundException, SQLException
 {
 
 long startTime = System.currentTimeMillis();
 File file = new File("H:/AgriculturalProduct/data/farming.csv");
 
 Scanner in = new Scanner(file);
 
 getConnect();
 System.out.println("數(shù)據(jù)庫連接成功");
 insert_data(in);
 
 long EndTime = System.currentTimeMillis();
 long time = (EndTime - startTime) / 1000;
 
 System.out.println("導(dǎo)入數(shù)據(jù)共用時(shí):" + time);
 }
 
 private static void insert_data(Scanner in) throws SQLException
 {
 int count = 0;
 String sql = "insert into farming (province,market,type,name,standard,area,color,unit,minprice,avgprice,maxprice,entertime,time)"
 + "values(?,?,?,?,?,?,?,?,?,?,?,?,?)";
 
 con.setAutoCommit(false);
 PreparedStatement pstmt = con.prepareStatement(sql);
 in.next();
 while (in.hasNext())
 {
 String temp1 = in.nextLine();
 String[] temp = temp1.split(",");
 
 if (temp.length < 13)
 continue;
 
 if (temp.length == 13)
 {
 pstmt.setString(1, temp[0]);
 pstmt.setString(2, temp[1]);
 pstmt.setString(3, temp[2]);
 pstmt.setString(4, temp[3]);
 pstmt.setString(5, temp[4]);
 pstmt.setString(6, temp[5]);
 pstmt.setString(7, temp[6]);
 pstmt.setString(8, temp[7]);
 pstmt.setString(9, temp[8]);
 pstmt.setString(10, temp[9]);
 pstmt.setString(11, temp[10]);
 pstmt.setString(12, temp[11]);
 pstmt.setString(13, temp[12]);
 }
 
 pstmt.addBatch();
 
 count++;
 
 if (count == 20000)
 {
 count = execute(pstmt, count);
 }
 }
 pstmt.executeBatch();
 con.commit();
 
 }
 
 public static int execute(PreparedStatement pstmt, int count) throws SQLException
 {
 
 pstmt.executeBatch();
 con.commit();
 return 0;
 
 }
 
 private static void getConnect()
 {
 try
 {
 Class.forName("com.mysql.jdbc.Driver");
 con = DriverManager.getConnection(
  "jdbc:mysql://localhost:3306/agricultural_price_prediction?useUnicode=true&characterEncoding=utf8&useServerPrepStmts=false&rewriteBatchedStatements=true",
  "root", "123456");
 }
 catch (ClassNotFoundException | SQLException e)
 {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }
 }
 
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java訪問權(quán)限原理與用法詳解

    Java訪問權(quán)限原理與用法詳解

    這篇文章主要介紹了Java訪問權(quán)限,結(jié)合實(shí)例形式詳細(xì)分析了java構(gòu)造者思想、包、訪問修飾符等相關(guān)原理、應(yīng)用與操作注意事項(xiàng),需要的朋友可以參考下
    2020-02-02
  • Spring注解開發(fā)生命周期原理解析

    Spring注解開發(fā)生命周期原理解析

    這篇文章主要介紹了Spring注解開發(fā)生命周期原理解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Java中Thread類的使用和它的屬性

    Java中Thread類的使用和它的屬性

    在java中可以進(jìn)行多線程編程,在java標(biāo)準(zhǔn)庫中提供了一個(gè)Thread類,來表示線程操作,本文主要介紹了Java中Thread類的使用和它的屬性,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 2023年IDEA最新永久激活教程(親測(cè)可用)

    2023年IDEA最新永久激活教程(親測(cè)可用)

    打開電腦,發(fā)現(xiàn)?IDEA?又更新了一個(gè)小版本,2022.3.2?版本來了,真的是非常高興,那么這么新的版本怎么激活使用呢?下面小編給大家?guī)砹薸dea2023年最新永久激活方法,感興趣的朋友一起看看吧
    2023-04-04
  • 詳解Spring bean的注解注入之@Autowired的原理及使用

    詳解Spring bean的注解注入之@Autowired的原理及使用

    之前講過bean注入是什么,也使用了xml的配置文件進(jìn)行bean注入,這也是Spring的最原始的注入方式(xml注入).本文主要講解的注解有以下幾個(gè):@Autowired、 @Service、@Repository、@Controller 、@Component、@Bean、@Configuration、@Resource ,需要的朋友可以參考下
    2021-06-06
  • maven基礎(chǔ)教程——簡(jiǎn)單了解maven的特點(diǎn)與功能

    maven基礎(chǔ)教程——簡(jiǎn)單了解maven的特點(diǎn)與功能

    這篇文章主要介紹了Maven基礎(chǔ)教程的相關(guān)資料,文中講解非常細(xì)致,幫助大家開始學(xué)習(xí)maven,感興趣的朋友可以了解下
    2020-07-07
  • java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法

    java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)微信小程序加密數(shù)據(jù)解密算法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Intellij IDEA 閱讀源碼的 4 個(gè)絕技(必看)

    Intellij IDEA 閱讀源碼的 4 個(gè)絕技(必看)

    今天小編給大家分享Intellij IDEA 閱讀源碼的 4 個(gè)絕技,熟練的運(yùn)用 IDEA 中各個(gè)小技巧,讓閱讀跟蹤源碼變得更輕松,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2020-04-04
  • SpringBoot遠(yuǎn)程訪問redis服務(wù)器問題剖析

    SpringBoot遠(yuǎn)程訪問redis服務(wù)器問題剖析

    使用了SpringBoot的項(xiàng)目,在遠(yuǎn)程連接Redis服務(wù)器時(shí),會(huì)遇倒一些小問題,下面通過本文給大家全面解析SpringBoot遠(yuǎn)程訪問redis服務(wù)器問題,需要的朋友參考下吧
    2017-04-04
  • Spring多數(shù)據(jù)源導(dǎo)致配置失效的解決

    Spring多數(shù)據(jù)源導(dǎo)致配置失效的解決

    這篇文章主要介紹了Spring多數(shù)據(jù)源導(dǎo)致配置失效的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-01-01

最新評(píng)論