使用POI将数据库中的数据导入到Excel中

使用poi完成excel表的导入,将数据保存到数据库内,包含合并单元格 使用poi完成excel表的导入,包含合并单元格的情况,重点是合并单元格数据填充!!!1 阅读详情

准备工作:

  • 创建表和数据
-- ----------------------------
-- Table structure for sys_role
-- ----------------------------
DROP TABLE IF EXISTS `sys_role`;
CREATE TABLE `sys_role`  (
  `ID` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '角色ID',
  `NAME` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '角色名称',
  `COMMENT` varchar(2048) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '角色说明',
  `CREATOR_ID` int(10) UNSIGNED NOT NULL DEFAULT 0 COMMENT '角色创建者ID',
  `CREATE_TIME` datetime(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '角色创建日期',
  PRIMARY KEY (`ID`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '角色表' ROW_FORMAT = Dynamic;

-- ----------------------------
-- Records of sys_role
-- ----------------------------
INSERT INTO `sys_role` VALUES (1, 'ADMIN', '管理员', 10, '2020-12-25 09:58:14');
INSERT INTO `sys_role` VALUES (2, 'SALES', '销售员', 30, '2020-12-25 09:58:40');

创建一个Maven项目

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>fun.gosuncn</groupId>
    <artifactId>poi</artifactId>
    <version>1.0</version>

    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.21</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>4.1.2</version>
        </dependency>
    </dependencies>

</project>

主要核心的代码:

package fun.gosuncn;

import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.xssf.usermodel.*;

import java.io.FileOutputStream;
import java.io.OutputStream;
import java.sql.*;

public class Test {

    private static final String url = "jdbc:mysql://gosuncn.fun:3306/gosuncn?serverTimezone=Asia/Shanghai&characterEncoding=utf8";

    private static final String user = "gosuncn";

    private static final String password = "gosuncn";

    private static final String sql = "SELECT `ID`, `NAME`, `COMMENT`, `CREATOR_ID`, `CREATE_TIME` FROM sys_role";

    public static void main(String[] args) {

        /**
         * 创建一个Excel文件对象
         */
        XSSFWorkbook workbook = new XSSFWorkbook();
        /**
         * 创建单元格样式
         */
        XSSFCellStyle style = workbook.createCellStyle();
        style.setAlignment(HorizontalAlignment.CENTER);
        /**
         * 创建一个表单命名为<角色表>
         */
        XSSFSheet sheet = workbook.createSheet("角色表");
        /**
         * 设置列宽
         */
        sheet.setColumnWidth(0, 10 * 256);
        sheet.setColumnWidth(1, 10 * 256);
        sheet.setColumnWidth(2, 15 * 256);
        sheet.setColumnWidth(3, 15 * 256);
        sheet.setColumnWidth(4, 20 * 256);
        /**
         * 创建第一行
         */
        XSSFRow row = sheet.createRow(0);
        /**
         * 设置每列的标题
         */
        XSSFCell cell = row.createCell(0);
        cell.setCellStyle(style);
        cell.setCellValue("ID");
        cell = row.createCell(1);
        cell.setCellStyle(style);
        cell.setCellValue("NAME");
        cell = row.createCell(2);
        cell.setCellStyle(style);
        cell.setCellValue("COMMENT");
        cell = row.createCell(3);
        cell.setCellStyle(style);
        cell.setCellValue("CREATOR_ID");

        try (Connection connection = DriverManager.getConnection(url, user, password);
             PreparedStatement preparedStatement = connection.prepareStatement(sql)) {
            ResultSet resultSet = preparedStatement.executeQuery();
            int rowNum = 1;
            while (resultSet.next()) {
                row = sheet.createRow(rowNum);
                int ID = resultSet.getInt("ID");
                String NAME = resultSet.getString("NAME");
                String COMMENT = resultSet.getString("COMMENT");
                int CREATOR_ID = resultSet.getInt("CREATOR_ID");
                Date CREATE_TIME = resultSet.getDate("CREATE_TIME");
                cell = row.createCell(0);
                cell.setCellStyle(style);
                cell.setCellValue(ID);
                cell = row.createCell(1);
                cell.setCellStyle(style);
                cell.setCellValue(NAME);
                cell = row.createCell(2);
                cell.setCellStyle(style);
                cell.setCellValue(COMMENT);
                cell = row.createCell(3);
                cell.setCellStyle(style);
                cell.setCellValue(CREATOR_ID);
                rowNum++;
            }
        } catch (SQLException exception) {
            System.out.println("SQLException Happening ...");
        }

        try (OutputStream outputStream = new FileOutputStream("poi.xlsx")) {
            workbook.write(outputStream);
        } catch (Exception exception) {
            System.out.println("SQLException Happening ...");
        }

    }
}

然后就可以在项目目录下打开poi.xlsx文件了。

SpringBoot中使用POI实现Excel导入到数据库(图文教程已实践) 场景 IDEA中开发SpringBoot项目时需要将Excel模板中数据导入的到数据库。 Excel模板如下 实现思想 首先将模板上传到服务器中某路径,并将当前路径存储,然后使用POI自带的 工具类获取到sheet以及行数以及每个cell,然后分别给数据库中对应的对象的属性赋值,然后插入到数据库中并返回执行结果。 实现 实现文件上传 页面代码 实现点击导入按钮弹窗 &lt... 阅读详情

相关推荐

Anomalib实战:5分钟搞定图像异常检测模型训练(附完整代码)

本文提供了一份基于Anomalib框架的图像异常检测快速实战指南。文章详细介绍了从环境搭建、数据准备到模型训练与推理的完整流程,重点推荐了训练速度快、效果稳定的PatchCore模型,并附带了可运行的完整代码,旨在帮助开发者快速上手工业质检等实际应用。

weixin_29039773的博客 421

使用poi将excel数据插入到数据库中

【代码】使用poi将excel数据插入到数据库中。

zouyang920的博客 2223

TDDFT计算软件Octopus学习笔记(二):基态计算(Si)

本文以硅为例,来进行基态计算。

陈啸的博客 7306

利用poi-ooxml实现 Excel表格导入数据库 与 从数据库导出Excel表格

return uid;本文一直围绕的是.xlsx后缀的表格展开的,对于.xls后缀的表格文件我们只需将创建表格实例化对象的 XSSFWorkbook 改为 HSSFWorkbook即可。t=N7T8Mybatis批量插入的四种方式https://blog.youkuaiyun.com/m0_56287495/article/details/131194750。

werewolfwerewolf的博客 6767

数字IC后端设计实现之Innovus POD V2 Flow性能优化全解析

本文深入解析了数字IC后端设计中的Innovus POD V2 Flow性能优化方案。该流程通过整合place_opt_design与clock_opt_design命令,实现了布局与时钟树的协同优化,有效提升了时序收敛效率、改善了设计密度与拥塞,并显著减少了迭代次数,是应对先进工艺复杂设计的关键利器。

ik6789012的博客 1249

分子对接中的相互作用特征分析(目视筛查)

介绍分子对接的相互作用特征,以及如何通过这些特征进行目视筛查

recher_He1107的博客 5757

使用POI将excel文件导入到数据库

这是接收创建临时表然后先将前端的数据存入到临时表内然后比对临时表中有无相同的数据,有的话将一个字段设为标识字段然后对此条数据进行标识,点击保存的时候比对完的临时表再去和实体的表再次比对将共同数据排除将新数据存入实际的表内。这是创建临时表之前先删除临时表,两条sql可以写成一条的但是MariaDB的写法比较严谨我尝试了但是不行就分开写了,创建临时表时要多写两个字段用于进行数据的标识,标识完成就可以在临时表里导入了。这里在前端js调用了访问本地文件的方法然后将其进行初步操作传入到后端这是layui内编写的。

路飞船长的博客 1605

SAP WM模块事务码(TCODE)大全

OL07 Data transfer stor.bins LDK34->RLPLA 仓储位LDK34 ->RLPLA

matinal 當冬夜漸暖 。公众号:matinal 5846

Apache / poi 操作excel导入导出 【Springboot Web】

Excel文件版本:2003版本扩展名为.xls使用HSSFWorkbook类操作(只能65536行,超过报错)2007版本扩展名为.xlsx使用XSSFWorkbook类操作XSSFWorkbook 优化使用(缓存) 使用SXSSFWorkbook类操作。

m0_51315555的博客 3467

基于YOLOv11的农作物病虫害检测系统设计与实现

我们使用公开的IP102病虫害数据集作为基础,该数据集包含102种病虫害类别,覆盖水稻、小麦、玉米等多种主要农作物。图像数量:75,222张类别数:102图像分辨率:从640×480到4000×3000不等标注格式:PASCAL VOC格式此外,我们还收集了部分田间实际拍摄的图像以增强模型泛化能力。

YOLO 595

最新Python爬虫实战(入门爬虫篇)——案例8:图书网畅销榜数据采集(详细爬虫思路截图+抓包动图演示+完整爬虫代码+详细注释)

本次案例通过 Python 爬虫技术,成功实现了对图书网畅销榜多页数据的批量爬取与 Excel 保存。代码采用模块化设计,包含分页参数构造、API 接口请求、JSON 数据解析、Excel 数据持久化等完整流程;通过配置模拟浏览器的请求头,有效规避基础反爬策略,保证请求的稳定性。整个爬虫逻辑遵循 “分页遍历 → 接口请求 → JSON 解析 → 提取图书信息 → 保存到 Excel” 的标准流程,与电商类接口爬取范式高度一致。

努力让自己发光,对的人才能迎着光而来 29万+

使用poi 把excel数据导入到数据库中

import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; /** * 导入excel ...

CF_KaiFa_999Bug的博客 246

YOLOv11改进有效涨点专栏目录 | 含卷积、主干、注意力机制、Neck、检测头、损失函数、二次创新C2PSA/C3k2等各种网络结构改进

Hello,各位读者们好.本文为最新YOLOv11有效涨点专栏目录,YOLOv11以及发布了一个月左右,这个过程中我也是给大家整理了许多的机制,其中包含了C3k2、主干(均支持根据yolov11训练的版本进行二次缩放,全系列都能轻量化)、检测头、注意力机制、Neck多种结构上创新,也有损失函数和一些细节点上的创新。

Snu77的博客 8万+

SSM使用POI解析Excel数据并实现批量导入到数据库

转自:https://blog.youkuaiyun.com/linmengmeng_1314/article/details/83093908#commentsedit 本文参考此博客https://blog.youkuaiyun.com/qq_31170429/article/details/76473205?utm_source=blogxgwz1 稍作修改而来,记录一下。 下面开始进入正题: 1、下载需...

cxws110的博客 1432

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Java使用POI将数据库中查到的数据导入到excel中(新手篇)

最近在工作中遇到一个需求,将页面上的数据导出/下载到excel,百度了几篇文章,照着写出来了,感觉不是很“平易近人”,于是自己总结一篇,方便大家参考。 工具:Intellij IDEA、Navicat、Postman 我创建的是maven项目,所以jar在pom文件中引入,如下 <!-- https://mvnrepository.com/artifact/org.apache....

IT_0417的博客 1288

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

使用Apache POI将Excel中的数据批量导入到数据库中(使用Element上传文件)

Apache POI导入数据到数据库 Apache POI简介 在Maven工程中导入依赖 在页面添加上传文件组件,配置文件 使用工具类将上传文件的数据导入到数据库 Apache POI简介 Apache POI是用Java编写的免费开源的跨平台的Java API,Apache POI提供API给Java程序对Microsoft office格式档案读和写的功能,其中使用最多的就是使用POI操作Excel文件。 POI结构: HSSF - 提供读写Microsoft Excel XLS格式档案的功能

YINJOER的博客 706

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Java使用POI将Excel文件数据导入到Mongo数据库

本文主要功能是将Excel文件中的数据导入Mongo数据库 github地址 1、导入依赖包 mongodb-driver-3.4.2.jar mongodb-driver-core-3.4.2.jar bson-3.4.2.jar poi-3.10.1-20140818.jar 2、直接上代码 public class ExcelToMongo { private stati...

qq_27243963的博客 2289

在SSM下使用POI解析Excel数据并实现批量导入到数据库

暑假实习期间,作为一名Java后台开发的小白实习生,项目组老大分发给我的一项任务就是实现在SSM下实现Excel数据的导入/导出,咱总不能手动Ctrl+C/Ctrl+V实现吧hhh,于是经过查阅资料,发现Apache的一个子项目POI可以帮助解析Office文档并实现需求。分享如下: Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Of...

Mollychin的博客 3982

ajax导入excel并添加到数据库,Java使用POI将Excel文件数据导入到Mongo数据库

前端ajax,后端springBoot1.准备:1.导入相关的依赖的依赖:org.springframework.bootspring-boot-starter-data-mongodborg.springframework.bootspring-boot-starter-weborg.projectlomboklomboktrueorg.mongodbmongodb-driverorg.mong...

weixin_39640414的博客 619

Springboot 使用POI 将Excel的数据表导入到数据库 案例

页面: &lt;a href="javascript:upload();" class="button float-right"&gt;&lt;span class="icon-plus" style="margin-right: 5px;"&gt;&lt;/span&gt;导入学生&lt;/a&gt; &lt;section style=

qq_37668945的博客 3869

小功能实现(十二)使用POI的方式读取excel表,并将其导入到数据库中

使用POI方式读取Excel表格

qq_44648936的博客 359

java POI读取excel,并导入数据库

功能实现:一个controller接口读取不同的excel,并导入到对应的数据库表中(一张excel表对应一张数据库表)。 方案:用POI工具,抽取导入公共类(ExcelReadUtil),不同的数据库导入,都继承这个公共类中的抽象类excelReadTemplate,实现抽象类中的packageObject(封装实体类)与insertObject(批量插入)方法。 具体实现: jar包引入 <dependency> <groupId>org.apache.poi</gr

weixin_41659262的博客 1136
上一篇: 自定义Maven插件入门
下一篇: rabbitmq保证消息投递成功的对比分析
盖了帽
博客等级 码龄8年 17粉丝 62原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值