java实现读取本地Excel详细数据写入Mysql数据库

接着上篇文章《java实现把数据写进Excel表格》,下面把数据取出来的代码也贴出来,写的不好的地方,希望大佬能够多多指教。

上代码:

public List<HashMap<String, String>> getExcelTableC(String file){
            List<HashMap<String, String>> list = new ArrayList<HashMap<String, String>>();    	
	    // 查询指定目录中电子表格中所有的数据
	    try {
	        Workbook rwb=Workbook.getWorkbook(new File(file));
	        //或者rwb.getSheet(0)
	        Sheet rs=rwb.getSheet("sheet1");
	        //得到所有的列
	        int clos=rs.getColumns();
	        //得到所有的行
	        int rows=rs.getRows();
	        for (int i = 1; i < rows; i++) {
	            for (int j = 0; j < rows; j++) {	                
	                HashMap<String,String> map = new HashMap<String,String>();
	                //第一个是列数,第二个是行数
	                for (int k = 0; k < rows; k++) {
	                	//默认最左边编号也算一列 所以这里得j++
	                	map.put("id", rs.getCell(j++, i).getContents());
	                        map.put("Cgonghao", rs.getCell(j++, i).getContents());	                    
	                	map.put("Cname", rs.getCell(j++, i).getContents());
					}
	                list.add(map);                
	            }
	        }
	    } catch (Exception e) {        
	    	logger.info("写入失败...");
	    }
		return list;   
	}

上面是写的工具类,下面是调用的实例:

public Object saveTableC(TableC tableC) {
		
		Map<String , String> result = new HashMap<String , String>();
		try {
			File isFileC = new File("e:/TestFile.xls");
			if(!isFileC.exists()){			
				result.put("msg", "错误!文件不存在!");	
				return false;
				}
			GetExcelTableCData getExcelTableC = new GetExcelTableCData();			
			List<HashMap<String , String>> listGetMapExcelCData = getExcelTableC.getExcelTableC("e:/TestFile.xls");			
			for (int i = 0; i < listGetMapExcelCData.size(); i++) {
				tableC.setId(Integer.parseInt(listGetMapExcelCData.get(i).get("id").toString()));
				Integer Cgonghao = Integer.parseInt(listGetMapExcelCData.get(i).get("Cgonghao").toString());
				tableC.setCgonghao(Cgonghao);
				tableC.setCname(listGetMapExcelCData.get(i).get("Cname"));
				tableCdao.insertTableC(tableC);				
			}
			result.put("msg", "本地Excel导入数据库成功!");
		} catch (Exception e) {
			logger.info("本地Excel表导入库失败");
			logger.error("发生异常 msg={}","原因",e);
			result.put("msg", "错误!导入失败!");
		}		
		return result;
	}

中间的都是spring mvc的内容,没有贴出来,不过实现Excel取数据的关键代码已经贴出来了,写的不好的地方欢迎大佬在评论区指教。

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值