• easyExcel注解详情


    11个注解

    @ExcelProperty
    @ColumnWith 列宽
    @ContentFontStyle 文本字体样式
    @ContentLoopMerge 文本合并
    @ContentRowHeight 文本行高
    @ContentStyle 文本样式
    @HeadFontStyle 标题字体样式
    @HeadRowHeight 标题高度
    @HeadStyle 标题样式
    @ExcelIgnore 忽略项
    @ExcelIgnoreUnannotated 忽略未注解

    字段注解 类注解

    @ColumnWith(列宽)
    @ColumnWidth(全局列宽)
    @ExcelProperty(字段配置)
    @HeadFontStyle(头样式)
    @HeadRowHeight(标题高度)
    @ContentFontStyle(内容字体样式)
    @ContentRowHeight(内容高度)
    @ExcelProperty
    必要的一个注解,注解中有三个参数value,index,converter分别代表列明,列序号,数据转换方式 value和index只能二选一,通常不用设置converter
    1.value 通过标题文本对应
    2.index 通过文本行号对应
    3.converter 转换器,通常入库和出库转换使用,如性别入库0和1,出库男和女

    1. public class ImeiEncrypt {
    2. @ExcelProperty(value = "值")
    3. private String valueField;
    4. @ExcelProperty(value = 1,converter =IndustryIdConverter.class)
    5. private String indexField;
    6. @ExcelProperty(value = "值对应和转换器",converter =IndustryIdConverter.class)
    7. private String valueAndConverterField;
    8. }

    @ColumnWith 设置列宽度,只有一个参数value,value的单位是字符长度,最大可以设置255个字符,因为一个excel单元格最大可以写入的字符个数就是255个字符。

    1. public class ImeiEncrypt {
    2. @ColumnWidth(value = 18)
    3. private String imei;
    4. }

    @ContentFontStyle 用于设置单元格内容字体格式的注解

    参数:
    fontName 字体名称
    fontHeightInPoints 字体高度
    italic 是否斜体
    strikeout 是否设置删除水平线
    color 字体颜色
    typeOffset 偏移量
    underline 下划线
    bold 是否加粗
    charset 编码格式

    @ContentLoopMerge 用于设置合并单元格的注解

    参数:
    eachRow
    columnExtend

    @ContentRowHeight 用于设置行高

    参数:
    value 行高,-1代表自动行高

    @ContentStyle 设置内容格式注解

    参数:
    dataFormat 日期格式
    hidden 设置单元格使用此样式隐藏
    locked 设置单元格使用此样式锁定
    quotePrefix 在单元格前面增加`符号,数字或公式将以字符串形式展示
    horizontalAlignment 设置是否水平居中
    wrapped 设置文本是否应换行。将此标志设置为true通过在多行上显示使单元格中的所有内容可见
    verticalAlignment 设置是否垂直居中
    rotation 设置单元格中文本旋转角度。03版本的Excel旋转角度区间为-90°90°,07版本的Excel旋转角度区间为0°180°
    indent 设置单元格中缩进文本的空格数
    borderLeft 设置左边框的样式
    borderRight 设置右边框样式
    borderTop 设置上边框样式
    borderBottom 设置下边框样式
    leftBorderColor 设置左边框颜色
    rightBorderColor 设置右边框颜色
    topBorderColor 设置上边框颜色
    bottomBorderColor 设置下边框颜色
    fillPatternType 设置填充类型
    fillBackgroundColor 设置背景色
    fillForegroundColor 设置前景色
    shrinkToFit 设置自动单元格自动大小

    @HeadFontStyle 用于定制标题字体格式

    参数 含义
    fontName 设置字体名称
    fontHeightInPoints 设置字体高度
    italic 设置字体是否斜体
    strikeout 是否设置删除线
    color 设置字体颜色
    typeOffset 设置偏移量
    underline 设置下划线
    charset 设置字体编码
    bold 设置字体是否加粗

    @HeadRowHeight 设置标题行行高

    参数 含义
    value 设置行高,-1代表自动行高

    @HeadStyle 设置标题样式

    参数 含义
    dataFormat 日期格式
    hidden 设置单元格使用此样式隐藏
    locked 设置单元格使用此样式锁定
    quotePrefix 在单元格前面增加`符号,数字或公式将以字符串形式展示
    horizontalAlignment 设置是否水平居中
    wrapped 设置文本是否应换行。将此标志设置为true通过在多行上显示使单元格中的所有内容可见
    verticalAlignment 设置是否垂直居中
    rotation 设置单元格中文本旋转角度。03版本的Excel旋转角度区间为-90°90°,07版本的Excel旋转角度区间为0°180°
    indent 设置单元格中缩进文本的空格数
    borderLeft 设置左边框的样式
    borderRight 设置右边框样式
    borderTop 设置上边框样式
    borderBottom 设置下边框样式
    leftBorderColor 设置左边框颜色
    rightBorderColor 设置右边框颜色
    topBorderColor 设置上边框颜色
    bottomBorderColor 设置下边框颜色
    fillPatternType 设置填充类型
    fillBackgroundColor 设置背景色
    fillForegroundColor 设置前景色
    shrinkToFit 设置自动单元格自动大小

    @ExcelIgnore 不将该字段转换成Excel

    @ExcelIgnoreUnannotated 没有注解的字段都不转换

     

    基础综合示例

    1. //行高全部设为40
    2. @HeadRowHeight(value = 40)
    3. //标题全部居中
    4. @HeadStyle(horizontalAlignment = CENTER)
    5. public class SupervisionDailyExportProcessDTO {
    6. //"二、问题整改情况"是大标题,"序号"是大标题下面的子标题
    7. @ExcelProperty({"二、问题整改情况", "序号"})
    8. @ContentStyle(horizontalAlignment = CENTER)
    9. private Integer id;
    10. @ExcelProperty({"二、问题整改情况", "问题来源"})
    11. //单独设置这一列列宽为40
    12. @ColumnWidth(value = 40)
    13. @ContentStyle(wrapped = true, horizontalAlignment = CENTER)
    14. private String questionOrigin;
    15. @ExcelProperty({"二、问题整改情况", "督察点位"})
    16. @ColumnWidth(value = 40)
    17. @ContentStyle(wrapped = true, horizontalAlignment = CENTER)
    18. private String supervisionPoint;
    19. @ExcelProperty({"二、问题整改情况", "问题内容"})
    20. @ColumnWidth(value = 40)
    21. @ContentStyle(wrapped = true, horizontalAlignment = CENTER)
    22. private String questionContents;
    23. @ExcelProperty({"二、问题整改情况", "责任单位"})
    24. @ColumnWidth(value = 30)
    25. @ContentStyle(horizontalAlignment = CENTER)
    26. private String orgName;
    27. @ExcelProperty({"二、问题整改情况", "整改情况"})
    28. @ColumnWidth(value = 40)
    29. @ContentStyle(wrapped = true, horizontalAlignment = CENTER)
    30. private String processSituation;
    31. }

    补充颜色

    NPOI Excel 单元格颜色对照表,在引用了 NPOI.dll 后可通过 ICellStyle 接口的 FillForegroundColor 属性实现 Excel 单元格的背景色设置,FillPattern 为单元格背景色的填充样式。
    NPOI Excel 单元格背景颜色设置方法以及颜色对照表:

    1. ICellStyle style = workbook.CreateCellStyle();
    2. style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.Red.Index;
    3. style.FillPattern = FillPattern.SolidForeground;
    4. ICell cell = workbook.CreateSheet().CreateRow(0).CreateCell(0);
    5. cell.CellStyle = style;

    在这里插入图片描述
    在这里插入图片描述


    总结

     设置背景色
    @ContentStyle(fillPatternType = FillPatternTypeEnum.SOLID_FOREGROUND, fillForegroundColor = 10)
    
    设置字体颜色
     @ContentFontStyle(color=10)

    设置边框,换行,内容位置

    @ContentStyle(wrapped = BooleanEnum.TRUE,
                horizontalAlignment= HorizontalAlignmentEnum.CENTER,
                verticalAlignment = VerticalAlignmentEnum.CENTER,
                borderLeft = BorderStyleEnum.THIN,
                borderRight = BorderStyleEnum.THIN,
                borderTop = BorderStyleEnum.THIN,
                borderBottom = BorderStyleEnum.THIN)
  • 相关阅读:
    TypeScript 项目实践:四步走高效改造现有的 JavaScript 项目
    lua源码分享-gc篇(三)流程之创建对象
    学生HTML个人网页作业作品 基于HTML+CSS+JavaScript明星个人主页(15页)
    文件夹怎么加密码?文件夹怎么设置密码?
    毕业设计JSP 2384网上diy蛋糕店管理系统【程序源码+讲解视频+调试运行】
    Android 获取手机通讯录信息 — 头像、姓名和A-Z的快速查询
    【K8S】学习笔记(一)
    下载HTMLTestRunner并修改
    Jar包常见的反编译工具介绍与使用
    报道 | 2023-2024年1月国际运筹优化会议汇总
  • 原文地址:https://blog.csdn.net/u011518709/article/details/134508223