zoukankan      html  css  js  c++  java
  • Java版将EXCEL表数据导入到数据库中

    1.采用第三方控件JXL实现

      1. 
        
        try  
                {  
                    //实例化一个工作簿对象  
                  Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls"));  
                  //获取该工作表中的第一个工作表  
                  Sheet sheet=workBook.getSheet(0);  
                  //获取该工作表的行数,以供下面循环使用  
                  int rowSize=sheet.getRows();  
                  for(int i=0;i<rowSize;i++)  
                  {  
                      //编号  
                      String id=sheet.getCell(0,i).getContents();  
                      //转来单位及文号  
                      String turn_unit=sheet.getCell(1,i).getContents();  
                      //来信人姓名  
                      String reg_name=sheet.getCell(2,i).getContents();             
                      //来信人单位或住址  
                      String reg_unit=sheet.getCell(3,i).getContents();  
                      //来信内容  
                      String reg_content=sheet.getCell(4,i).getContents();  
                      //来信日期  
                      Date reg_time = java.sql.Date.valueOf(sheet.getCell(5,i).getContents());  
                      //信访事项发生地或单位  
                      String reg_eventUnit=sheet.getCell(6,i).getContents();  
                      //处理情况  
                      String do_case=sheet.getCell(7,i).getContents();  
                      //处理日期  
                      Date do_time=java.sql.Date.valueOf(sheet.getCell(8,i).getContents());  
                      //问题归类  
                      String problem_type=sheet.getCell(9,i).getContents();  
                      //问题所属系统  
                      String problem_system=sheet.getCell(10,i).getContents();  
                      //督办时间及文号  
                      String wenhao=sheet.getCell(11,i).getContents();  
                      //经办人  
                      String processor=sheet.getCell(12,i).getContents();  
                      //备注  
                      String remark=sheet.getCell(13,i).getContents();  
                      LcTOldRegServiceImpl regService=new LcTOldRegServiceImpl();              
                      LctOldReg reg=new LctOldReg(id,turn_unit,reg_name,reg_unit,reg_time,do_time,wenhao,problem_system,problem_type,reg_eventUnit,remark,reg_content,processor,do_case);  
                       //执行保存数据到数据库语句…….  
                      regService.add_qzlx(reg);  
                      System.out.print("已成功导入第"+id+"条纪录");  
                  }  
                  return mapping.findForward("import_success");  
                }  
                catch(Exception ex)  
                {  
                    System.out.print(ex.getMessage());  
                    return mapping.findForward("import_faile");  
                }  
        
        

         

        
        

        2.添加POI jar包到项目的lib目录下

        public class TestExcel {­
               //记录类的输出信息­
               static Log log = LogFactory.getLog(TestExcel.class); ­
               //获取Excel文档的路径­
               public static String filePath = "D://excel.xls";­
              public static void main(String[] args) {­
                     try                   // 创建对Excel工作簿文件的引用­
                           HSSFWorkbook wookbook = new HSSFWorkbook(new FileInputStream(filePath));­ 
                           // 在Excel文档中,第一张工作表的缺省索引是0
                           // 其语句为:HSSFSheet sheet = workbook.getSheetAt(0);­
                           HSSFSheet sheet = wookbook.getSheet("Sheet1");­
                           //获取到Excel文件中的所有行数­
                           int rows = sheet.getPhysicalNumberOfRows();
                           //遍历行­
                           for (int i = 0; i < rows; i++) {­
                                 // 读取左上端单元格­
                                 HSSFRow row = sheet.getRow(i);­
                                 // 行不为空­
                                 if (row != null) {­
                                       //获取到Excel文件中的所有的列­
                                       int cells = row.getPhysicalNumberOfCells();­
                                       String value = "";     ­
                                       //遍历列­
                                       for (int j = 0; j < cells; j++) {­
                                             //获取到列的值­
                                             HSSFCell cell = row.getCell(j);­
                                             if (cell != null) {­
                                                   switch (cell.getCellType()) {­
                                                         case HSSFCell.CELL_TYPE_FORMULA:­
                                                         break                                                 case HSSFCell.CELL_TYPE_NUMERIC:­
                                                               value += cell.getNumericCellValue() + ",";        ­
                                                         break;  ­
                                                         case HSSFCell.CELL_TYPE_STRING:­
                                                               value += cell.getStringCellValue() + ","                                                 break                                                 default                                                       value += "0"                                                 break                               }      
                                 // 将数据插入到mysql数据库中­
                                 String[] val = value.split(",");­
                                 TestEntity entity = new TestEntity();­
                                 entity.setNum1(val[0]);­
                                 entity.setNum2(val[1]);­
                                 entity.setNum3(val[2]);­
                                 entity.setNum4(val[3]);­
                                 entity.setNum5(val[4]);­
                                 entity.setNum6(val[5]);­
                                 TestMethod method = new TestMethod();­
                                 method.Add(entity);­
               } catch (FileNotFoundException e) {­
                     e.printStackTrace();­
               } catch (IOException e) {­
                     e.printStackTrace();­
        
         
  • 相关阅读:
    NodeJS学习笔记 进阶 (11)Nodejs 进阶:调试日志打印:debug模块
    NodeJS学习笔记 进阶 (10)Nodejs 进阶:log4js入门实例(ok))
    NodeJS学习笔记 进阶 (9)express+cookie-parser:签名机制深入剖析(ok)
    NodeJS学习笔记 进阶 (8)express+morgan实现日志记录(ok)
    NodeJS学习笔记 进阶 (7)express+session实现简易身份认证(ok)
    NodeJS学习笔记 进阶 (6)本地调试远程服务器上的Node代码(ok)
    NodeJS学习笔记 进阶 (5)将图片转成datauri嵌入到html(ok)
    51nod 1287 线段树
    51nod 1043 数位dp
    51nod 1042 数位dp
  • 原文地址:https://www.cnblogs.com/mgzy/p/3850409.html
Copyright © 2011-2022 走看看