当前位置: 首页 > article >正文

hutool糊涂工具通过注解设置excel宽度

 

import java.lang.annotation.*;

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.FIELD, ElementType.PARAMETER})
public @interface ExcelStyle {

    int width() default 0;
}

/**
 * 聊天记录
 */
@Data
public class DialogContentInfo {

    /**
     * 群ID
     */
    @Alias("群ID")
    @ExcelStyle(width = 30)
    private String dialogId;

    /**
     * 患者群名
     */
    @Alias("患者群名")
    @ExcelStyle(width = 80)
    private String dialogTitle;

    /**
     * 内容
     */
    @Alias("消息内容")
    @ExcelStyle(width = 120)
    private String content;

    /**
     * 发送人
     */
    @Alias("随访人员")
    @ExcelStyle(width = 25)
    private String nickname;

    /**
     * 时间
     */
    @Alias("时间")
    @ExcelStyle(width = 25)
    private String createdTime;

    /**
     * userId
     */
    @PropIgnore
    private Long userId;
}


    /**
     * 设置excel样式
     */
    private void setExcelStyle(Class<?> clazz, ExcelWriter writer) {
        Field[] fields = ClassUtil.getDeclaredFields(clazz);
        for (int index = 0; index < fields.length; index++) {
            Field field = fields[index];
            ExcelStyle excelStyle = field.getAnnotation(ExcelStyle.class);
            if (excelStyle == null || excelStyle.width() == 0) {
                continue;
            }
            writer.setColumnWidth(index, excelStyle.width());
        }
    }


http://www.kler.cn/a/501635.html

相关文章:

  • 基于单片机的智能花卉浇水系统的设计与实现
  • 典型的 package.json 文件中的
  • Rank-Analysis——LOL 排位战绩查询分析器
  • C++ union 联合(八股总结)
  • 数字证书管理服务
  • git flow流程拆解实践指导
  • 深入解析 ZooKeeper:分布式协调服务的原理与应用
  • R语言的软件工程
  • Linux服务器提高网络吞吐量和减少连接延迟的算法选择
  • ASP.NET MVC-System.Threading.Timer-定时清理文件夹
  • 【linux】vi编辑文件及readonly文件修改读写权限方法
  • 使用 Linux tracepoint、perf 和 eBPF 跟踪数据包
  • 算法-拆分数位后四位数字的最小和
  • 【LeetCode: 240. 搜索二维矩阵 II + 指针 + 遍历】
  • 【Ubuntu与Linux操作系统:十一、Java与Android应用开发】
  • 基于微信小程序的书籍销售系统设计与实现(LW+源码+讲解)
  • 微信小程序map组件所有markers展示在视野范围内
  • 深入理解 Python 的多进程编程 (Multiprocessing)
  • uniapp(接入智谱Ai完整示例)
  • 【git】-3 github创建远程仓库,上传自己的项目,下载别人的项目
  • ubuntu官方软件包网站 字体设置
  • client-go 的 QPS 和 Burst 限速
  • [Flutter] 使用ScrollController配合EasyRefresh实现列表预加载:在还未滑动到底部时加载下一页数据
  • 35_Lua基本语法
  • 学技术学英语:ELK是什么
  • 谷歌浏览器的音视频播放设置与优化