页面jsp及js代码:
function submitExcel(url){
$.ajaxMutiUpload({
type:"post",
url:url,
secureuri:true,// 安全提交,默认为false
dataType:'json',
fileElementId:"zzsFile",//上传文件的id
success:function(data){
$("#operateWin").window('close');
searchForm();
$.messager.show({
title:'友情提示',
msg:data.message
});
},
error:function(XMLHttpRequest,textStatus,errorThrown){
$.messager.show({
title:'友情提示',
msg:data.message
});
}
});
}
温馨提示: 只支持excel导入 |
后台java代码对excel文件进行解析:
//上传的文件:File zzsFile
//文件名称:String zzsFileFileName
//需要保存数据到的list:List secondaryList
public List loadUserInfo(File zzsFile, String zzsFileFileName,
List secondaryList) {
try {
FileInputStream fis = new FileInputStream(zzsFile);
Workbook wb = null;
if (zzsFileFileName.toLowerCase().endsWith("xls")) {
wb = new HSSFWorkbook(fis);
}else if(zzsFileFileName.toLowerCase().endsWith("xlsx")) {
wb = new XSSFWorkbook(fis);
}
Sheet sheet = wb.getSheetAt(0);
int rowNum = sheet.getLastRowNum()+1;
//i 从1开始表示第一行为标题 不包含在数据中
for(int i=1;i
Secondary secondary = new Secondary();
Row row = sheet.getRow(i);
int cellNum = row.getLastCellNum();
for(int j=0;j
Cell cell = row.getCell(j);
String cellValue = null;
if(cell != null){
cell.setCellType(Cell.CELL_TYPE_STRING);
cellValue = cell.getStringCellValue();
}
switch(j){//通过列数来判断对应插如的字段
//数据中不应该保护ID这样的主键记录
//case 0 : user.setId(Integer.valueOf(cellValue));break;
case 0 : secondary.setSecondaryIdentity(cellValue);break;
case 1 : secondary.setSecondaryName(cellValue);break;
case 2 : secondary.setSecondarySex(cellValue);break;
case 3 : secondary.setSecondaryBirthday(cellValue);break;
case 4 : secondary.setSecondaryProvince(cellValue);break;
case 5 : secondary.setSecondaryCity(cellValue);break;
case 6 : secondary.setSecondaryCounty(cellValue);break;
case 7 : secondary.setSecondaryFreeTuition(cellValue);break;
case 8 : secondary.setSecondaryFreeTerm(cellValue);break;
case 9 : secondary.setSecondaryAgriAccount(cellValue);break;
case 10 : secondary.setSecondaryAccountDes(cellValue);break;
case 11 :
if(cellValue!=null&&cellValue.length()!=0){
Dormitory dormitory = (Dormitory) getSession().get(Dormitory.class,Long.parseLong(cellValue));
if(dormitory!=null){
dormitory.setPeopleNum(dormitory.getPeopleNum()+1);
if(dormitory.getPeopleNum()!=dormitory.getRentPeople()){
secondary.setDormitory(dormitory);
getSession().update(dormitory);
}
}
}
break;
}
}
secondaryList.add(secondary);
}
} catch (Exception e) {
e.printStackTrace();
}
return secondaryList;
}