jsp页面:
action:
public String upload(){
// 检查后缀名是否符合条件
int filesize = this.getFileFileName().length();
String fileEx = this.getFileFileName().substring(
this.getFileFileName().indexOf("."), filesize);
if(fileEx.equals(".xls")){
try {
this.userService.readExcel(file, tag);
} catch (Exception e) {
return "upload-fail";
}
}
return "upload-success";
}
service:
public void readExcel(File file,String tag){
try {
// 创建对Excel工作簿文件的引用-
HSSFWorkbook wookbook = new HSSFWorkbook(new FileInputStream(file));
// 在Excel文档中,第一张工作表的缺省索引是0
// 其语句为:HSSFSheet sheet = workbook.getSheetAt(0);
HSSFSheet sheet = wookbook.getSheetAt(0);
//获取到Excel文件中的所有行数-
int rows = sheet.getPhysicalNumberOfRows();
//第一行所有的列数
int cellNum=sheet.getRow(0).getPhysicalNumberOfCells();
System.out.println("行数:"+rows+",列数:"+cellNum);
//遍历行
for (int i = 1; i < rows; i++) {
// 读取左上端单元格
HSSFRow row = sheet.getRow(i);
List list=new ArrayList();
//遍历列
for (int j = 0; j < cellNum; j++) {
//获取到列的值-
HSSFCell cell = row.getCell(j);
String temp=cell!=null?cell.toString():"";
list.add(temp);
}
// 将数据插入到mysql数据库中
User u = (User) ActionContext.getContext().getSession().get("okUser");
String company_id = u.getCompany_id();
if(tag.equals("1")){//基站站址
AddrInfo entity = new AddrInfo();
entity.setJzno(list.get(0));
entity.setJzname(list.get(1));
if(isExist(list.get(0))){//如果基站存在则更新
this.addrInfoDao.update(entity);
}else{//如果基站不存在则新增
this.addrInfoDao.save(entity);
}} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}