jsp
<form id="uploadForm" enctype="multipart/form-data" method="POST"> <div class="col-sm-4"> <input id="fileN" type="file" name="file"> </div> <div class="col-sm-4 col-sm-offset-4"> <button type="button" class="btn btn-success btn-sm" οnclick="upDatumCus()">导入</button> <button type="button" class="btn btn-success btn-sm" id="export" data-type="csv" >模板下载</button> </div> </form>
ajax:
function upDatumCus(){ var formData = new FormData(); formData.append('files',$("#fileN")[0].files[0]); $.ajax({ type: 'POST', url:"/ziliaoke/DatumCusLeading", encType: 'multipart/form-data', data:formData, contentType: false, processData: false, success: function(data) { alert("数据保存成功"); }, error: function() { alert("Connection error"); }, }); }
controller:
@ResponseBody @RequestMapping("/DatumCusLeading") public int DatumCusLeading(@RequestParam(value="files",required=false) MultipartFile file,HttpServletRequest request) throws Exception{ int a= 0; InputStream fileInputStream = file.getInputStream(); a = fyDatumcustomerService.insertSelectiveDatumCus(fileInputStream); return a; } serverimpl:
@Override public int insertSelectiveDatumCus(InputStream fileInputStream) { int a = 0; FyDatumcustomer fyDatumcustomer = new FyDatumcustomer(); try { List<String[]> datas =FileParseUtils.parseCSVFile(fileInputStream); for (String[] strings : datas) { fyDatumcustomer.setZdcName(strings[0]); fyDatumcustomer.setZdcPhone(strings[1]); fyDatumcustomer.setZdcBranch(strings[2]); fyDatumcustomer.setZdcPerson(strings[3]); fyDatumcustomer.setZdcCreatetime(new Date()); a = fyDatumcustomermapper.insertSelective(fyDatumcustomer); } } catch (IOException e) { e.printStackTrace(); } return a; } public final class FileParseUtils { public static List<String[]> parseCSVFile(InputStream in) throws IOException{ CsvReader reader = null; List<String[]> dataList = null; try{ reader = new CsvReader(in, CharsetUtils.get("GBK")); dataList = new ArrayList<String[]>(); reader.readHeaders(); while(reader.readRecord()){ dataList.add(reader.getRawRecord().split(",")); System.out.println(reader.getRawRecord()); } }finally{ if(null != reader){ reader.close(); } } return dataList; } }
