JAVA导入Excel文件
来源:互联网 发布:淘宝c店变成企业店铺 编辑:程序博客网 时间:2024/06/05 15:15
“落叶他乡树,寒灯独夜人”
JSP:
<div id="excelUser" title="excel导入" style="display: none; width: 350px; height: 150px; padding: 15px; background: #E9F1FF;"> <form id="excelUserForm" method="post" enctype="multipart/form-data" action=""> <table cellspacing='0' cellpadding='1'> <tr> <td style="text-align: left; font-size: 12px;">选择excel文件:</td> <td><input style="width: 200px;" type="file" class="input easyui-validatebox" id="excelfile" name="excelfile" required="required" /> </td> </tr> <tr> <td colspan="2" style="text-align: left; font-size: 12px;"><span style="color: red">注:请选择后缀名为xlsx文件,否则无法导入。</span></td> </tr> </table> </form></div>
JS:
/** * 上传方法 */function doImport() { $('#excelUser').show().dialog({ modal : true, toolbar : [ { text : '提交', iconCls : 'icon-ok', handler : function() { $('#excelUserForm').form('submit', { url : 'controller/clientActivityHotInfoManage/import.json', onSubmit : function() { parent.$.messager.progress({ title : '提示', text : '数据导入中,请稍等....' }); var isValid = $('#excelUserForm').form('validate'); if (!isValid) { parent.$.messager.progress('close'); return false; } }, success : function(response) { $('#excelUser').dialog('close'); var response = eval('(' + response + ')'); parent.$.messager.progress('close'); if (response.success) { $.messager.alert('成功', response.msg, 'info'); $('#subjectGrid').datagrid('reload'); // doAuto(); } else { $.messager.alert('失败', response.msg, 'error'); } $('#projectStageConfig').datagrid('load', { id : $.trim($('#id').val()) }); }, failure : function(response) { parent.$.messager.progress('close'); $('#excelUser').dialog('close'); $.messager.alert('失败', response.msg, 'error'); } }); } }, { text : '关闭', iconCls : 'icon-cancel', handler : function() { $('#excelUser').dialog('close'); } } ] });}
Controller:
@CodeComments("导入EXCEL到表中") @RequestMapping({"/import.json"}) @ResponseBody public void importExcel(MultipartHttpServletRequest request, HttpServletRequest request1, HttpServletResponse response, ClientActivityHotInfoManage eui, Integer egroupid) { Map messages = new HashMap(); MultipartFile file = request.getFile("excelfile"); String inputPath = file.getOriginalFilename(); System.out.println("inputPath=========================" + inputPath); String originalFile = inputPath.substring( inputPath.lastIndexOf(".") + 1, inputPath.length()) .toLowerCase(); if ("xls,xlsx".indexOf(originalFile) < 0) { messages.put("success", Boolean.valueOf(false)); messages.put("msg", "文件导入类型错误,只能导入后缀名是xlsx的EXCEL文件类型!"); toJson(response, messages); return; } if ("xls".equals(originalFile)) { messages.put("success", Boolean.valueOf(false)); messages.put("msg", "文件导入类型错误,只能导入后缀名是xlsx的EXCEL文件类型!"); toJson(response, messages); return; } if (file.getSize() > 20048576L) { messages.put("success", Boolean.valueOf(false)); messages.put("msg", "文件过大,只能导入20M内文件!"); toJson(response, messages); return; } int i = 0; try { InputStream fis = file.getInputStream(); //这个方法在下面展示 List imielist = ActivityHotInfoExcelManage.importExcelInfo(fis, eui); ClientActivityHotInfoManage order = new ClientActivityHotInfoManage(); for (i = 0; i < imielist.size(); i++) { ClientActivityHotInfoManage vo = (ClientActivityHotInfoManage)imielist.get(i); ClientActivityHotInfoManage lx = new ClientActivityHotInfoManage(); lx.setAcId(vo.getAcId()); lx.setAcUrl(vo.getAcUrl()); lx.setStartDate(vo.getStartDate()); lx.setEndDate(vo.getEndDate()); lx.setRepeat(vo.getRepeat()); lx.setStatus(vo.getStatus()); lx.setPlotId(vo.getPlotId()); lx.setAcName(vo.getAcName());//这里就可以直接插入实体类了 this.clientActivityHotInfoManageService.insert(lx); messages.put("success", Boolean.valueOf(true)); messages.put("msg", "数据导入成功!"); } fis.close(); } catch (Exception e) { messages.put("success", Boolean.valueOf(false)); messages.put("msg", "导入异常,请在检查excel表的第" + (i + 2) + "行后,从第" + ( i + 2) + "行开始导入!"); System.out.println("importExcel异常--------->" + e.getMessage()); } toJson(response, messages); }
importExcelInfo方法
public static List<ClientActivityHotInfoManage> importExcelInfo(InputStream fis, ClientActivityHotInfoManage eui) { List<ClientActivityHotInfoManage> excelInfos = new ArrayList<ClientActivityHotInfoManage>(); try { XSSFWorkbook hwb = new XSSFWorkbook(fis); XSSFSheet sheet = hwb.getSheetAt(0); XSSFRow row = null; System.out.println("*****总行数****" + sheet.getPhysicalNumberOfRows()); for (int i = 0; i < hwb.getNumberOfSheets(); i++) { sheet = hwb.getSheetAt(i); for (int j = 1; j < sheet.getPhysicalNumberOfRows(); j++) { row = sheet.getRow(j); ClientActivityHotInfoManage excelInfo = new ClientActivityHotInfoManage(); if ((row.getCell(1) != null) && (getCellValue(row.getCell(1)) != "")) { excelInfo.setAcId(getCellValue(row.getCell(1)).trim()); excelInfo.setAcUrl(getCellValue(row.getCell(2)).trim()); excelInfo.setStartDate(getCellValue(row.getCell(3)).trim()); excelInfo.setEndDate(getCellValue(row.getCell(4)).trim()); excelInfo.setRepeat(Long.parseLong(getCellValue(row.getCell(5)).trim().substring(0,1))); excelInfo.setStatus(Long.parseLong(getCellValue(row.getCell(6)).trim().substring(0,1))); excelInfo.setPlotId((getCellValue(row.getCell(7)).trim())); excelInfo.setAcName((getCellValue(row.getCell(8)).trim())); } excelInfos.add(excelInfo); } } return excelInfos; } catch (Exception e) { System.out.println("导入EXCEL文件出错------------>" + e.getMessage()); } return null; }
阅读全文
1 0
- Java导入Excel文件
- JAVA导入Excel文件
- java excel文件导入
- Java操作Excel文件导入
- Java操作Excel文件导入
- java Excel文件导入导出
- Java操作Excel文件导入
- Java操作Excel文件导入
- Java操作Excel文件导入
- java poi Excel文件导入
- java版Excel文件导入数据库源代码
- JAVA 导入导出EXCEL文件操作
- java中excel文件数据的导入
- java中导入导出Excel文件
- JAVA 导入导出EXCEL文件操作
- Java数据导入(读)Excel文件
- Java的Excel文件导入时报错
- java 编程excel文件导入数据库
- Lanczos插值滤波器
- thinkphp-复合查询
- 问题栏
- Django中model.py重写user
- linux关于静态库与动态库的使用_笔记
- JAVA导入Excel文件
- 多任务学习(Multi-Task Learning, MTL)
- Python采集网页时正则表达式匹配换行符的问题
- Java 里如何实现线程间通信
- Unity优化杂谈3(资源)
- 观察者模式
- 远程安装linux环境的mysql
- ios审核4.3被拒? 别担心 这几步让你的 App 顺利过审!
- spring的自动扫描里面的include-filter,exclude-filter