java使用POI

  • 添加依赖
  • 实现用户数据的导入
  • 实现用户数据的导出
  • 普通导出
  • 带样式导出
  • 简化代码的样式导出
  • 导出用户详细数据
  • 改进方法
  • 百万数据的导出
  • 百万数据读取
  • CSV的导出
  • POI导出word
  • easyPOI
  • easyPOI导出数据
  • easyPOI导入
  • PDF不常用可以WORD转所以暂时不写


添加依赖

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.0.1</version>
</dependency>

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.0.1</version>
</dependency>

<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml-schemas</artifactId>
    <version>4.0.1</version>
</dependency>

实现用户数据的导入

excel模板数据:

java poi 使用 java poi api_java poi 使用


java poi 使用 java poi api_java-ee_02


java poi 使用 java poi api_java poi 使用_03

java poi 使用 java poi api_java_04


java poi 使用 java poi api_数据_05


java poi 使用 java poi api_java_06

实现用户数据的导出

普通导出

java poi 使用 java poi api_数据_07

java poi 使用 java poi api_java-ee_08


java poi 使用 java poi api_数据_09


java poi 使用 java poi api_java poi 使用_10


java poi 使用 java poi api_java_11

带样式导出

java poi 使用 java poi api_java-ee_12


java poi 使用 java poi api_java-ee_13


java poi 使用 java poi api_java-ee_14

简化代码的样式导出

java poi 使用 java poi api_数据_15


java poi 使用 java poi api_java_16

java poi 使用 java poi api_java_17


java poi 使用 java poi api_java poi 使用_18


java poi 使用 java poi api_java_19


java poi 使用 java poi api_数据_20


java poi 使用 java poi api_java-ee_21

导出用户详细数据

java poi 使用 java poi api_java poi 使用_22


java poi 使用 java poi api_java_23


java poi 使用 java poi api_java-ee_24


java poi 使用 java poi api_java poi 使用_25


java poi 使用 java poi api_数据_26


java poi 使用 java poi api_java-ee_27


java poi 使用 java poi api_数据_28


java poi 使用 java poi api_java-ee_29

改进方法

java poi 使用 java poi api_数据_30


java poi 使用 java poi api_java_31

java poi 使用 java poi api_java-ee_32

百万数据的导出

第一步、创建表

CREATE TABLE `tb_user2` (
  `id` bigint(20) NOT NULL  COMMENT '用户ID',
  `user_name` varchar(100) DEFAULT NULL COMMENT '姓名',
  `phone` varchar(15) DEFAULT NULL COMMENT '手机号',
  `province` varchar(50) DEFAULT NULL COMMENT '省份',
  `city` varchar(50) DEFAULT NULL COMMENT '城市',
  `salary` int(10) DEFAULT NULL,
  `hire_date` datetime DEFAULT NULL COMMENT '入职日期',
  `dept_id` bigint(20) DEFAULT NULL COMMENT '部门编号',
  `birthday` datetime DEFAULT NULL COMMENT '出生日期',
  `photo` varchar(200) DEFAULT NULL COMMENT '照片路径',
  `address` varchar(300) DEFAULT NULL COMMENT '现在住址' 
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

2、创建存储过程

DELIMITER $$    -- 重新定义“;”分号
DROP PROCEDURE IF EXISTS test_insert $$   -- 如果有test_insert这个存储过程就删除
CREATE PROCEDURE test_insert()			  -- 创建存储过程

BEGIN
	DECLARE n int DEFAULT 1;				    -- 定义变量n=1
	SET AUTOCOMMIT=0;						    -- 取消自动提交
	
		while n <= 5000000 do					
			INSERT INTO `tb_user2` VALUES ( n, CONCAT('测试', n), '13800000001', '北京市', '北京市', '11000', '2001-03-01 21:18:29', '1', '1981-03-02 00:00:00', '\\static\\user_photos\\1.jpg', '北京市西城区宣武大街1号院');
			SET n=n+1;
		END while;
		COMMIT;
END $$

3、开始执行

CALL test_insert();

java poi 使用 java poi api_java-ee_33

java poi 使用 java poi api_java_34

java poi 使用 java poi api_java-ee_35


java poi 使用 java poi api_java poi 使用_36


java poi 使用 java poi api_java_37

百万数据读取

java poi 使用 java poi api_java poi 使用_38

java poi 使用 java poi api_java_39


java poi 使用 java poi api_java-ee_40

CSV的导出

<dependency>
    <groupId>com.opencsv</groupId>
    <artifactId>opencsv</artifactId>
    <version>4.5</version>
</dependency>

java poi 使用 java poi api_java_41


java poi 使用 java poi api_java poi 使用_42

java poi 使用 java poi api_java poi 使用_43

POI导出word

首先我们先制作一个word模板

java poi 使用 java poi api_java-ee_44


java poi 使用 java poi api_java poi 使用_45


java poi 使用 java poi api_数据_46

java poi 使用 java poi api_java poi 使用_47


java poi 使用 java poi api_java_48


java poi 使用 java poi api_java_49


java poi 使用 java poi api_java poi 使用_50


java poi 使用 java poi api_java-ee_51

easyPOI

java poi 使用 java poi api_数据_52

java poi 使用 java poi api_java_53

<dependency>
    <groupId>cn.afterturn</groupId>
    <artifactId>easypoi-spring-boot-starter</artifactId>
    <version>4.1.0</version>
</dependency>

java poi 使用 java poi api_java_54

第一步:修改实体类,添加注解

java poi 使用 java poi api_数据_55


java poi 使用 java poi api_java poi 使用_56


java poi 使用 java poi api_java_57

java poi 使用 java poi api_java_58


导出CSV数据

java poi 使用 java poi api_java poi 使用_59


java poi 使用 java poi api_java-ee_60


下载word文档

java poi 使用 java poi api_java-ee_61


java poi 使用 java poi api_数据_62

java poi 使用 java poi api_java-ee_63

easyPOI导出数据

java poi 使用 java poi api_java-ee_64


java poi 使用 java poi api_java-ee_65


java poi 使用 java poi api_java-ee_66

easyPOI导入

java poi 使用 java poi api_java poi 使用_67

PDF不常用可以WORD转所以暂时不写