用java将excel表单导入数据库表单----新手入门

构建项目思路
1、利用Excel第三方工具,将Excel文件读取到内存中。使用最简单,方便的工具是apache的poi工具包,自己网上下载 http://poi.apache.org/ ,使用方法网上一搜一大片。
2、如果是对于特别大的excel(大于20M的话),简单的读取方法就容易内存溢出了,需要采用流式读取的方式,参考http://poi.apache.org/spreadsheet/how-to.html#xssf_sax_api 
3、将已读入内存的Excel数据,整理成写数据库的数据结构,然后插入数据库。这部分工作应该不用介绍了,就是基本的数据库操作方法,与excel无关了 参考:http://skyuck.iteye.com/blog/453540

我的项目的构建思路:
Excel解析------》导入集合--------》导入数据库
运用技术:
①:poi解析excel技术
②:list集合知识
③:jdbc(SQL语句)技术
运用软件:
①:Spring Tool Suite
②:Wamp
③:Nevicat Premium

加入的jar包
引用:
*mysql的jar文件
Spring_HOME/lib/poi/.jar

commons-io commons-io 2.5 org.apache.poi poi 3.10-FINAL org.apache.poi poi-ooxml 3.10-FINAL

在这里插入图片描述

项目初期准备
项目开始之前:
用java将excel表单导入数据库表单----新手入门_第1张图片
在这里插入图片描述
--------》
项目成功之后:
用java将excel表单导入数据库表单----新手入门_第2张图片

项目最终代码

import java.io.File;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.io.FileUtils;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;

public class Dexcel {
public static void main(String args[]) throws Exception {
File file=new File(“C:\Users\chenxao\Desktop\ddd.xls”);
try {
Class.forName(“com.mysql.jdbc.Driver”);
Connection conn = DriverManager.getConnection(
“jdbc:mysql://127.0.0.1:3306/444?useSSL=true&characterEncoding=UTF-8”
, “root” , “”);
PreparedStatement pstmt = conn.prepareStatement(
“insert into yonghu values(?,?,?,?,?,?)”);
HSSFWorkbook workbook=
new HSSFWorkbook(FileUtils.openInputStream(file));
HSSFSheet sheet = workbook.getSheet(“Sheet1”);
int firstRowNum=1;
int lastRowNum=sheet.getLastRowNum();
List fff=new ArrayList();
for(int i=firstRowNum;i<=lastRowNum;i++) {
HSSFRow row = sheet.getRow(i);
int lastCellNum=row.getLastCellNum();
for(int j=0;j Cell numCell = row.getCell(j);
if(numCell != null){
numCell.setCellType(Cell.CELL_TYPE_STRING);
}
String value = numCell.getStringCellValue();
fff.add(value);
System.out.print(value+" ");
}
System.out.println();
}
System.out.println(fff);
System.out.println(fff.get(3));
for (int k=0; k {
pstmt.setString(1 , (String) fff.get(k6));
pstmt.setString(2 , (String) fff.get(k
6+1));
pstmt.setString(3 ,(String) fff.get(k6+2));
pstmt.setString(4 , (String) fff.get(k
6+3));
pstmt.setString(5 , (String) fff.get(k6+4));
pstmt.setString(6 ,(String) fff.get(k
6+5));
pstmt.executeUpdate();
}
}
catch(IOException e){
e.printStackTrace();
}
}
}

用java将excel表单导入数据库表单----新手入门_第3张图片

思路理顺:
①:jdbc链接数据库
②:poi解析excel文件
③:将解析到的数据导入到集合中
④:将集合中的数据导入数据库

你可能感兴趣的:(用java将excel表单导入数据库表单----新手入门)