java读取Excel数据存入缓存_java 读取excel存入数据库

该博客介绍了如何使用Java的Apache POI库读取Excel文件中的数据,并将这些数据插入到数据库中。代码示例展示了如何处理不同类型的单元格,以及如何调用数据库操作方法进行数据存储。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.model;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import com.jfinal.plugin.activerecord.Db;

import org.apache.poi.hssf.usermodel.HSSFWorkbook;

import org.apache.poi.ss.usermodel.Cell;

import org.apache.poi.ss.usermodel.Row;

import org.apache.poi.ss.usermodel.Sheet;

import org.apache.poi.ss.usermodel.Workbook;

public class PoiDemo {

public String excelPath = "D:\\Users\\user\\Desktop\\piodemo.xls";

public void poimothed() throws FileNotFoundException{

try {

//String encoding = "GBK";

File excel = new File(excelPath);

if (excel.isFile() && excel.exists()) { //判断文件是否存在

String[] split = excel.getName().split("\\."); //.是特殊字符,需要转义!!!!!

Workbook wb=null;

//根据文件后缀(xls/xlsx)进行判断

if ( "xls".equals(split[1])){

FileInputStream fis = new FileInputStream(excel); //文件流对象

wb = new HSSFWorkbook(fis);

}else if ("xlsx".equals(split[1])){

}else {

System.out.println("文件类型错误!");

return;

}

//开始解析

Sheet sheet = wb.getSheetAt(0); //读取sheet 0

int firstRowIndex = sheet.getFirstRowNum()+2; //第一行是列名,所以不读

int lastRowIndex = sheet.getLastRowNum();

System.out.println("firstRowIndex: "+firstRowIndex);

System.out.println("lastRowIndex: "+lastRowIndex);

String consolation_leader=null;

String grouping_company=null;

String accompany_leader=null;

String liaison_man=null;

String contacts_man=null;

for(int rIndex = firstRowIndex; rIndex <= lastRowIndex; rIndex++) { //遍历行

System.out.println("rIndex: " + rIndex);

Row row = sheet.getRow(rIndex);

if (row != null) {

int firstCellIndex = row.getFirstCellNum();

int lastCellIndex = row.getLastCellNum();

String consolation_level=null;

String name=null;

String sex=null;

String birthday=null;

String join_party_time=null;

String grouping_Basics=null;

String address=null;

String lntroduction=null;

for (int cIndex = firstCellIndex; cIndex < lastCellIndex; cIndex++) { //遍历列

Cell cell = row.getCell(cIndex);

if (cell != null&&!"".equals(cell.toString().trim())) {

switch(cIndex)

{

case 1:

consolation_leader=cell.toString();

System.out.println("1:"+consolation_leader);

break;

case 2:

consolation_level=cell.toString();

System.out.println("2:"+consolation_level);

break;

case 3:

name=cell.toString();

System.out.println("3:"+name);

break;

case 4:

sex=cell.toString();

System.out.println("4:"+sex);

break;

case 5:

birthday=cell.toString();

System.out.println("5:"+birthday);

break;

case 6:

join_party_time=cell.toString();

System.out.println("6:"+join_party_time);

break;

case 7:

grouping_Basics=cell.toString();

System.out.println("7:"+grouping_Basics);

break;

case 8:

address=cell.toString();

System.out.println("8:"+address);

break;

case 9:

lntroduction=cell.toString();

System.out.println("9:"+lntroduction);

break;

case 10:

grouping_company=cell.toString();

System.out.println("10:"+grouping_company);

break;

case 11:

accompany_leader=cell.toString();

System.out.println("11:"+accompany_leader);

break;

case 12:

liaison_man=cell.toString();

System.out.println("12:"+liaison_man);

break;

case 13:

contacts_man=cell.toString();

System.out.println("13:"+contacts_man);

break;

default:

break;

}

}

}

insertMethod(consolation_leader,consolation_level,name,sex,birthday,join_party_time,grouping_Basics,address,lntroduction,grouping_company,accompany_leader,liaison_man,contacts_man);

}

}

} else {

System.out.println("找不到指定的文件");

}

} catch (Exception e) {

e.printStackTrace();

}

}

public void insertMethod(String consolation_leader,String consolation_level,String name,String sex,String birthday,String join_party_time,String grouping_Basics,String address,String lntroduction,String grouping_company,String accompany_leader,String liaison_man,String contacts_man){

String sql="insert into condolences(consolation_leader,consolation_level,name,sex,birthday,join_party_time,grouping_Basics,address,lntroduction,grouping_company,accompany_leader,liaison_man,contacts_man) values(?,?,?,?,?,?,?,?,?,?,?,?,?)";

Db.update(sql,consolation_leader,consolation_level,name,sex,birthday,join_party_time,grouping_Basics,address,lntroduction,grouping_company,accompany_leader,liaison_man,contacts_man);

}

}

d7853458fee98c826668106911f5621d.png

org.apache.poipoi3.15org.apache.poipoi-ooxml3.15

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值