Java将excel中的数据导入到mysql中

时间:2022-09-05 23:21:44

我们在实际工作中的一些时候会需要将excel中的数据导入数据库,如果你的数据量成百上千甚至更多,相信一点点ctrlc、ctrlv也不是办法,这里我们以mysql数据库为例,将excel中的数据存入数据库。

我的思路是:先将excel中的数据取出来,再把数据传入数据库,操作excel需要jxl.jar,操作数据库可以用最基本的jdbc,需要mysql-connector-java-5.0.8-bin.jar这个jar包。

下面我们先看一下excel截图:

Java将excel中的数据导入到mysql中

再来看最后的效果图:

下面贴出整个代码:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package browser;
 
import java.io.File;
import java.sql.*;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
 
public class PushExcelToMysql {
 public static void main(String[] args) throws Exception {
 
 Sheet sheet;
 Workbook workbook;
 Cell [][] cells=new Cell[3][3];
 try{
 workbook=Workbook.getWorkbook(new File("E:\\lalala.xls"));
 sheet=workbook.getSheet(0);
 for(int i=0;i<3;i++){
 for(int j=0;j<3;j++){
  cells[i][j]=sheet.getCell(j,i);
 }
 }
 }catch (Exception e) {
 e.printStackTrace();
 }
 
 try{
 Class.forName("com.mysql.jdbc.Driver");
 }catch(Exception e){
 e.printStackTrace();
 }
 Connection c=DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?characterEncoding=UTF-8", "root","root");
 String sql="insert into tosql(name,age,sex) values(?,?,?)";
 PreparedStatement ps=c.prepareStatement(sql);
 for(int i=0;i<3;i++){
 ps.setString(1, cells[i][0].getContents());
 ps.setString(2, cells[i][1].getContents());
 ps.setString(3, cells[i][2].getContents());
 ps.execute();
 }
 System.out.println("ok");
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/qq_34092336/article/details/77844658