首页 > 数据库 >Javaexcel文件读取,插入到数据库中

Javaexcel文件读取,插入到数据库中

时间:2023-08-06 16:01:07浏览次数:39  
标签:Javaexcel 读取 数据库 sql import row your String

你可以使用Java的Apache POI库来读取Excel文件,并使用JDBC连接数据库将数据插入到数据库中。下面是一个示例代码:

import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ExcelToDatabase {
    public static void main(String[] args) {
        String excelFilePath = "path/to/your/excel/file.xlsx";
        String dbUrl = "jdbc:mysql://localhost:3306/your_database";
        String username = "your_username";
        String password = "your_password";

        try (Connection conn = DriverManager.getConnection(dbUrl, username, password)) {
            FileInputStream fileInputStream = new FileInputStream(excelFilePath);
            Workbook workbook = new XSSFWorkbook(fileInputStream);
            Sheet sheet = workbook.getSheetAt(0);

            for (Row row : sheet) {
                // Assuming the data starts from the second row, change as per your requirement
                if (row.getRowNum() == 0) continue;

                String column1Value = row.getCell(0).getStringCellValue();
                int column2Value = (int) row.getCell(1).getNumericCellValue();

                // Insert the data into the database
                String sql = "INSERT INTO your_table_name (column1, column2) VALUES (?, ?)";
                PreparedStatement statement = conn.prepareStatement(sql);
                statement.setString(1, column1Value);
                statement.setInt(2, column2Value);
                statement.executeUpdate();
            }

            System.out.println("Data inserted successfully!");

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

在上述代码中,你需要将以下部分替换为你自己的信息:

  • excelFilePath:Excel文件的路径。
  • dbUrl:数据库的URL。
  • usernamepassword:数据库的用户名和密码。
  • your_table_name:要插入数据的表名。

请注意,你需要将正确的数据库驱动程序添加到你的项目依赖中。这个示例假设你正在使用MySQL数据库,如有需要,请根据使用的数据库更改代码中的相关部分。

另外,请确保在使用JDBC连接时使用安全的方式,如使用加密连接、参数化查询等,以避免潜在的安全问题。

标签:Javaexcel,读取,数据库,sql,import,row,your,String
From: https://blog.51cto.com/u_16007699/6985095

相关文章

  • 使用缓存优化网站性能:缓解数据库压力,提高访问速度
    使用缓存是一种有效的优化网站性能的方式,特别是对于那些访问集中在少部分数据上的场景,可以显著减轻数据库的压力,提高网站的响应速度和性能。缓存的主要原理是将常用的数据存储在内存中,以避免频繁地从数据库读取数据。由于内存的读写速度远远快于磁盘,通过缓存可以大幅提高数据访问......
  • 笔记|数据库设计——《数据库原理》
    数据库结构设计包括⚫需求分析阶段:综合各个用户的应用需求⚫概念结构设计:形成独立于各个DBMS概念模式,如E-R图⚫逻辑结构设计:形成数据库逻辑模式与外模式,用(基本)数据模型描述,例基本表、视图等⚫物理结构设计:形成数据库内模式,如DB文件或目录、索引一.需求分析......
  • 【面试经验分享】MySQL数据库面试题:如何定位慢查询?
    面试官:MySQL中,如何定位慢查询?候选人:嗯~,我们当时做压测的时候有的接口非常的慢,接口的响应时间超过了2秒以上,因为我们当时的系统部署了运维的监控系统Skywalking,在展示的报表中可以看到是哪一个接口比较慢,并且可以分析这个接口哪部分比较慢,这里可以看到SQL的具体的执行时间,所以可以......
  • MySQL数据库的常用命令
    1.创建数据库指定字符集:CREATE DATABASEdb_nameDEFAULTCHARACTERSETutf8COLLATEutf8_general_ci 2.新建用户:createuser'hive'@'localhost'identifiedby'123456';如果提示:ERROR1290(HY000):TheMySQLserverisrunningwiththe--skip-gra......
  • 第4天- 1分钟 快速Docker安装clickhouse 数据库
    1.获取clickhouse镜像dockerpullyandex/clickhouse-serverdockerpullyandex/clickhouse-client2.查看安装的镜像dockerimages3.启动server端mkdirclickhousedockerrun-d--nameclickhouse-test-server--ulimitnofile=262144:262144--volume=/clickhouse:......
  • 记录小知识 数据库设置自动填充更新创建字段时间
    1,在数据库中设置该字段类型为timestamp  2,设置默认值为 CURRENT_TIMESTAMP3,更新字段需要点击勾选根据当前时间戳更新 而创建时间是不需要勾选的因为创建只需要一次 ......
  • 多线程访问数据库报错
    在用flask实现http服务器的时候,只需要指定路由和访问方法,前端的访问就可以获取到,然后触发后端的响应函数,如果后端响应函数用公用的sqlconnection的时候,可能会导致数据库连接冲突报错,报错内容如下:AttributeError:'NoneType'objecthasnoattribute'read' 参考这篇博客的解......
  • 传奇服务端架设如何正确设置传奇服务端数据库?
    要配置DBC,让程序能够正确访问到数据库打开控制面板(图1.4.1)双击打开BDEAdministrator在菜单栏上选择Object→New弹出对话框.选择数据库驱动程序名字STANDARD标准.在左边输入数据库名字HERODB.数据库名字可以随便取.但服务端设置上要相对应.选择数据库表的路径,之前我们将服......
  • 金奖方案 | 一专多能、傲视寰宇,南大通用GBase8c数据库牛在哪里?opengauss
    金奖方案|一专多能、傲视寰宇,南大通用GBase8c数据库牛在哪里?opengaussopenGauss2022-11-0420:59发表于四川鲲鹏应用创新大赛是面向全球开发者的顶级赛事,本次大赛由21个鲲鹏生态创新中心与华为,联合中国软件行业协会、绿色计算产业联盟、中国计算机行业协会、中国计算机学会高专......
  • 数据库迁移系列】从MySQL到openGauss的数据库对象迁移实践
    数据库迁移系列】从MySQL到openGauss的数据库对象迁移实践原创酷哥[openGauss](javascript:void(0);)2022-11-0718:03发表于广东9月30日新发布的openGauss3.1.0版本,工具的全量迁移和增量迁移的性能不但有了全面提升,而且支持数据库对象视图、触发器、自定义函数、存储过程的......