private Object doSaveFiles( HttpServletRequest req, HttpServletResponse res, MultipartHttpServletRequest httpReq) throws Exception { String dealClass = httpReq.getParameter("dealclass"); String pkmessage = httpReq.getParameter("pkmessage"); if ("null".equals(dealClass)) { dealClass = (String) req.getSession().getAttribute("dealclass"); } if ("null".equals(pkmessage)) { pkmessage = (String) req.getSession().getAttribute("pkmessage"); } if (dealClass == null) { req.setAttribute("message", "获取xls文件处理类失败,请检查参数信息!"); RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/html/nodes/importbodydata/uploadsuccess.jsp"); dispatcher.forward(req, res); } Iterator nameIt = httpReq.getFileNames(); Map parameterMap = httpReq.getParameterMap(); MultipartFile file = null; while (nameIt.hasNext()) { String fileName = (String) nameIt.next(); logger.debug("get file:" + fileName); file = httpReq.getFile(fileName); logger.debug("end file:"); } if (file == null) { req.setAttribute("message", "无法获取到上传的文件数据信息,请重新上传数据文件!"); RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/html/nodes/importbodydata/message.jsp"); dispatcher.forward(req, res); } String message = ""; try { Object obj = Class.forName(dealClass).newInstance(); if (obj == null) { message = "数据导入时,实例化处理类失败,请联系维护人员解决此问题!"; } else { if (obj instanceof ImportExcelIn) { ImportExcelIn iei = (ImportExcelIn) obj; message = iei.dealExcelFile(file.getInputStream(), httpReq); } else { message = "实际传入的类为" + dealClass + ",需实现相应接口,请检查实现接口是否有误!"; } } } catch (Exception e) { message = "数据导入时,实例化处理类失败,请联系维护人员解决此问题!"; logger.error("数据导入时,实例化处理类失败,class=" + dealClass); logger.error(e.getMessage(), e); } req.getSession().setAttribute("message", message); req.getSession().setAttribute("pkmessage", pkmessage); req.getSession().setAttribute("dealclass", dealClass); return null; }