XLS导入到ORACLE数据库

一:a.建表.b.xls表头必须是建表后的字段. 

// 会员导入
 public ActionForward queryImpMebers(ActionMapping mapping, ActionForm form,
   HttpServletRequest request, HttpServletResponse response)
   throws Exception {
  MemberManageService memberManageService = (MemberManageService) this
  .getService("memberManageService");
  String url = request.getParameter("fexls"); 
   url = java.net.URLDecoder.decode(url,"UTF-8");//转码
   String imp="impok";
 /*导入xls进数据库   ssh在daoImpl操作
  *  // 创建输入流workbook对象
  InputStream is = new FileInputStream(url);
  Workbook wb = Workbook.getWorkbook(is);
  // 获得工作表的工作个数
  int sheetNum = wb.getNumberOfSheets();
  // 获取第一张sheet表
  Sheet st = wb.getSheet(0);
  for (int i = 0; i < sheetNum; i++) {
  }
  System.out.println();
  // 获取列数,行数
  int rsCoulums = st.getColumns();
  int rsRows = st.getRows();
  // 输出表
  for (int i = 0; i < rsRows; i++) {
   for (int j = 0; j < rsCoulums; j++) {
    System.out.println(st.getCell(j, i).getContents() + "   ");
   }
   System.out.println();
  }
  // 生成列字段
  String colName = "";
  for (int i = 0; i < rsCoulums; i++) {
   if (i == rsCoulums - 1) {
    colName = colName + st.getCell(i, 0).getContents();
   } else {
    colName = colName + st.getCell(i, 0).getContents() + ",";
   }
  }
  System.out.println(colName + "===========列字段");
  String colValue[] = new String[rsRows - 1];
  // 获取第二行的值.第一行的列
  for (int i = 0; i < rsRows - 1; i++) {
   colValue[i] = "";
   for (int j = 1; j < rsCoulums; j++) {
    if (j == rsCoulums - 1) {
     colValue[i] = colValue[i] + "\'"
       + st.getCell(j, i + 1).getContents() + "\'";
    } else {
     colValue[i] = colValue[i] + "\'"
       + st.getCell(j, i + 1).getContents() + "\'" + ",";
    }
   }
  }
 
  String maxNo = memberManageService.getMaxId();
  int str = Integer.parseInt(maxNo) + 1;
  String meid=String.valueOf(str);
  System.out.println(meid+"目前ID==========");
 
  String sql[] = new String[rsRows - 1];
  for (int i =0; i < rsRows - 1; i++) { //循环每一行会员记录
   sql[i] = "insert into memberf" + "( " + colName + ") values ( '"+String.valueOf(str+i+1)+"' "
     + colValue[i] + ")";
   System.out.println("sql  : " + sql[i] + "    ");
   
  }*/
   try{
    memberManageService.impMembers(1 ,url,"");  
     imp="impok";
    request.setAttribute("imp", imp);
   }catch(Exception ex){
    ex.printStackTrace();
    imp="impno";
    request.setAttribute("imp", imp);
   }

  return mapping.findForward("queryImpMebers");
 }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值