欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

两种方法将excel中的数据导入mysql数据库

程序员文章站 2022-05-17 19:08:24
...

使用Apache POI读取excel

  Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。
结构:
HSSF - 提供读写Microsoft Excel格式档案的功能。
XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。
HWPF - 提供读写Microsoft Word格式档案的功能。
HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
HDGF - 提供读写Microsoft Visio格式档案的功能。                         — 百度百科

  • 准备excel:
    两种方法将excel中的数据导入mysql数据库
  • 代码
    /**
     * 读取poi数据的测试方法
     * @throws IOException
     */
    @Test
    public void test() throws IOException {
        //获取文件
        File file = new File("E:\\demo\\students.xlsx");
        //获得excel文件的输入流
        FileInputStream stream = new FileInputStream(file);
        //获取所有sheet页
        Workbook sheets = new XSSFWorkbook(stream);
        //获取第一个sheet页
        Sheet sheet = sheets.getSheetAt(0);
        //该sheet页总行数
        int totalNum = sheet.getLastRowNum();
        //i等于1 ,从第二行开始
        for (int i = 1; i<=totalNum; i++) {
            // 获取行
            Row row = sheet.getRow(i);
            // 获取单元格 取值  用String类型接收
            row.getCell(0).setCellType(CellType.STRING);
            row.getCell(1).setCellType(CellType.STRING);
            row.getCell(2).setCellType(CellType.STRING);
            row.getCell(3).setCellType(CellType.STRING);
            //如果不先设置获取的类型为STRING 直接用getStringCellValue,
            // 遇到全是数字的情况时 会抛出异常Cannot get a STRING value from a NUMERIC cell
            String username = row.getCell(0).getStringCellValue();
            String password = row.getCell(1).getStringCellValue();
            String mail = row.getCell(2).getStringCellValue();
            String addr = row.getCell(3).getStringCellValue();
            System.out.println("username:"+username+"password:"+password+"mail:"+mail+"addr"+addr);

            //springboot集成mybatis将数据写入数据库
            Student student = new Student(username,password,mail,addr);
            studentMapper.insert(student);
        }
        sheets.close();
        stream.close();
    }

运行后,控制台:
两种方法将excel中的数据导入mysql数据库
注意:
2003版本(包含2003)以前的扩展名为.xls需要用HSSFWorkbook类操作
2007版本(包含2007)以后的扩展名为.xlsx需要用XSSFWorkbook类操作

使用数据库连接工具Navicat

  工具用的好,下班走的早。Navicat将excel导入数据库,又好用又快。????

  1. 右键–>导入向导
    两种方法将excel中的数据导入mysql数据库
  2. 选择excel(支持两种格式)、
    两种方法将excel中的数据导入mysql数据库
  3. 选择文件,点击下一步。
    两种方法将excel中的数据导入mysql数据库
  4. 继续下一步两种方法将excel中的数据导入mysql数据库
  5. 选择目标表,表名可以更改。
    两种方法将excel中的数据导入mysql数据库
  6. 查看数据是否正确
    两种方法将excel中的数据导入mysql数据库
  7. 将记录添加到目标表,点击下一步
    两种方法将excel中的数据导入mysql数据库
  8. 完成
    两种方法将excel中的数据导入mysql数据库
  9. 导入成功
    两种方法将excel中的数据导入mysql数据库
相关标签: 《工具》