POI的Excel模板

<?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>org.example</groupId>
    <artifactId>ExclePoi</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>

    <dependencies>

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

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.9</version>
        </dependency>
        <!--日期格式化工具,这里用Java原生的也可以-->
        <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.10.1</version>
        </dependency>

        <!--test-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>RELEASE</version>
            <scope>compile</scope>
        </dependency>

    </dependencies>

</project>

import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.junit.Test;

import java.io.FileOutputStream;

//Arbor 2022/6/30
public class GroupWorkbook {
    String path = "D:\\IdeaProjects\\ExclePoi\\src\\main\\java\\";

    @Test
    public void CreateGroupExcle() throws Exception {
//        创建工作簿()
//        Workbook workbook = new HSSFWorkbook();
        Workbook workbook = new SXSSFWorkbook();
//        创建工作表
        Sheet sheet0 = workbook.createSheet();
        workbook.setSheetName(0,"团长");

//        创建行title
        Row row1 = sheet0.createRow(0);




//        创建单元格
        Cell cell1_1 = row1.createCell(0);
        Cell cell1_2 = row1.createCell(1);
        Cell cell1_3 = row1.createCell(2);
        Cell cell1_4 = row1.createCell(3);
        Cell cell1_5 = row1.createCell(4);
        Cell cell1_6 = row1.createCell(5);
        Cell cell1_7 = row1.createCell(6);
        Cell cell1_8 = row1.createCell(7);
        Cell cell1_9 = row1.createCell(8);

//        设置单元格内容
        cell1_1.setCellValue("楼号");
        cell1_2.setCellValue("房号");
        cell1_3.setCellValue("联系人");
        cell1_4.setCellValue("联系电话");
        cell1_5.setCellValue("商品1");
        cell1_6.setCellValue("商品2");
        cell1_7.setCellValue("商品3");
        cell1_8.setCellValue("商品4");
        cell1_9.setCellValue("总金额");


        // set Title BLACK background
        CellStyle style = workbook.createCellStyle();
        style.setFillForegroundColor(IndexedColors.BLACK.getIndex());
        style.setFillPattern(CellStyle.SOLID_FOREGROUND);
        Font font = workbook.createFont();
        font.setColor(IndexedColors.WHITE.index);//设置excel数据字体颜色
        style.setFont(font);
        short lastCellNum = row1.getLastCellNum();
        for (int i = 0;i<lastCellNum;i++){
            row1.getCell(i).setCellStyle(style);
        }


        FileOutputStream fileOutputStream = new FileOutputStream(path + "GroupWorkbook.xlsx");
        workbook.write(fileOutputStream);
        fileOutputStream.close();

        System.out.println("结束");


    }
}

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.streaming.SXSSFWorkbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.junit.Test;

import java.io.FileOutputStream;

//Arbor 2022/6/30
public class GruopExcle {

    String path = "D:\\IdeaProjects\\ExclePoi\\src\\main\\java\\";

    @Test
    public void CreateGroupExcle() throws Exception {
//        1.创建工作簿()2003有65535行,比较快
//        Workbook workbook = new HSSFWorkbook();GroupWorkbook.xls
//        2.创建工作簿()2007无上限,比较慢,可以更多数据
//        Workbook workbook = new XSSFWorkbook();GroupWorkbook.xlsx
//        3.SXSSFWorkbook()创建工作簿()2007有65535行,快,可以更多数据,有临时文件要清除
        Workbook workbook = new XSSFWorkbook();
//        创建工作表
        Sheet sheet = workbook.createSheet();
//        创建行
        Row row1 = sheet.createRow(0);
//        创建单元格
        Cell cell11 = row1.createCell(0);
//        设置单元格内容
        cell11.setCellValue("111111");
//        创建单元格
        Cell cell12 = row1.createCell(1);
//        设置单元格内容
        cell12.setCellValue("111111");

        FileOutputStream fileOutputStream = new FileOutputStream(path+"GroupWorkbook.xlsx");
        workbook.write(fileOutputStream);
        fileOutputStream.close();

        System.out.println("结束");
    }


//    3.SXSSFWorkbook()创建工作簿()2007有65535行,快,可以更多数据,有临时文件要清除
    @Test
    public void CreateSXSSFWorkbookExcle() throws Exception {
//        创建工作簿()2003有65535行,比较快
//        Workbook workbook = new HSSFWorkbook();GroupWorkbook.xls
//        创建工作簿()2007无上限,比较慢,可以更多数据
//        Workbook workbook = new XSSFWorkbook();GroupWorkbook.xlsx
//        SXSSFWorkbook()创建工作簿()2007有65535行,快,可以更多数据,有临时文件要清除
        Workbook workbook = new SXSSFWorkbook();
//        创建工作表
        Sheet sheet = workbook.createSheet();
//        创建行
        Row row1 = sheet.createRow(0);
//        创建单元格
        Cell cell11 = row1.createCell(0);
//        设置单元格内容
        cell11.setCellValue("111111");
//        创建单元格
        Cell cell12 = row1.createCell(1);
//        设置单元格内容
        cell12.setCellValue("111111");

        FileOutputStream fileOutputStream = new FileOutputStream(path+"GroupWorkbook.xlsx");
        workbook.write(fileOutputStream);
        fileOutputStream.close();
//清除临时文件
        ((SXSSFWorkbook) workbook).dispose();
        System.out.println("结束");
    }


}

posted @ 2022-06-30 17:34  Arborblog  阅读(217)  评论(0编辑  收藏  举报