采用spring mvc 和mybatis框架 将excel数据导入到Mysql数据库

该博客介绍了如何使用Spring MVC和Mybatis框架将Excel数据批量导入到MySQL数据库。首先在JSP页面中设置文件上传表单,接着在Controller中处理文件上传,调用Service层的方法进行数据解析和保存。Service层中,通过ReadExcelUtil读取Excel内容并转化为实体对象,再调用Mybatis的Mapper进行逐条插入操作。

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

1.jsp部分:

<form action = "price/excelUpload" method = "post" enctype="multipart/form-data">
                  <input class="fileFrom" type="file" name="filename" ><br/>
                  <input class="formSubmit" type="submit" value="立即添加" name="">

 </form>


2.Controller部分:

@RequestMapping("/excelUpload")
public String excelUpload(@RequestParam(value="filename") MultipartFile file,HttpServletRequest request,HttpServletResponse response){
if(file==null) return null;
    //获取文件名
    String name=file.getOriginalFilename();
    //进一步判断文件是否为空(即判断其大小是否为0或其名称是否为null)
    long size=file.getSize();
    if(name==null || ("").equals(name) && size==0) return null;
    
    //批量导入。参数:文件名,文件。
    boolean b = ps.excelUpload(name, file);
    if(b){
         String Msg ="批量导入EXCEL成功!";
         request.getSession().setAttribute("msg",Msg);    
    }else{
         String Msg ="批量导入EXCEL失败!";
         request.getSession().setAttribute("msg",Msg);
    }
   
return "***";
}

3.serviceImpl部分

@Override
public boolean excelUpload(String name, MultipartFile file) {
boolean b = false;
       //创建处理EXCEL
       ReadExcelMaterial readExcel=new ReadExcelMaterial();
       //解析excel,获取客户信息集合。
       List<Price> priceList= readExcel.getExcelInfo(name, file);


       if(materialList != null){
           b = true;
       }
       
       //迭代添加客户信息(注:实际上这里也可以直接将customerList集合作为参数,在Mybatis的相应映射文件中使用foreach标签进行批量添加。)
       for(Price price:priceList){
           pm.addPrice(price);
       }
       return b;
}

4.util


import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;


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

评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值