1、maven的pom文件添加下面jar包
org.apache.poi
poi
3.17
org.apache.poi
poi-ooxml
3.17
org.apache.poi
poi-ooxml-schemas
3.17
org.apache.xmlbeans
xmlbeans
2.4.0
org.apache.commons
commons-collections4
4.1
2、前端页面定义layui按钮,弹出导入页面
//定义按钮
//弹出层位置
//toolbar监听事件
table.on('toolbar(currentTableFilter)', function (obj) {
if(obj.event === 'uploadExcel'){
layer.open({
type: 2,
title: 'Excel上传',
shadeClose: true,
shade: 0.8,
area: ['500px', '50%'],
content: 'uploadHtml',
btn: ['确定', '取消'],
yes: function (index) {
var formSubmit = layer.getChildframe('form', index);
var submited = formSubmit.find('button')[0];
submited.click();
$('.layui-laypage-btn').click();
}
});
}
});
3、弹出框页面代码
导入excel数据
4、后端controller
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.multipart.MultipartFile;
import com.jincheng.bean.Unit;
import com.jincheng.common.ReadDataByExcel;
import com.jincheng.service.UnitService;
import com.jincheng.util.JsonResult;
import com.jincheng.util.UtilTool;
import lombok.extern.slf4j.Slf4j;
@Controller
@Slf4j
public class UploadController {
@Autowired
private UnitService unitService;
//弹出页面
@RequestMapping("/uploadHtml")
public String uploadHtml(String mode,Model model) {
return "upload/upload";
}
//批量数据添加
@Transactional
@ResponseBody
@PostMapping(value = "upload")
public JsonResult upload(@RequestParam MultipartFile file) {
System.out.println(file.getOriginalFilename());
log.info("Excel批量上传信息");
try {
InputStream inputStream = file.getInputStream();
List
5、自定义读取excel 里面数据 (poi)
import lombok.extern.slf4j.Slf4j;
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.xssf.usermodel.XSSFWorkbook;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.linkedHashMap;
import java.util.List;
import java.util.Map;
@Slf4j
public class ReadDataByExcel {
public static List