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

网站侧边 跟随 样式淘宝运营团队怎么找

网站侧边 跟随 样式,淘宝运营团队怎么找,北京科技公司,做自媒体素材搬运网站背景&#xff1a; 网上大部分都不能直接使用&#xff0c;为此总结一个方便入手且可用的工具&#xff0c;用自定义注解实现 依赖包&#xff1a; <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>…

背景:

网上大部分都不能直接使用,为此总结一个方便入手且可用的工具,用自定义注解实现
依赖包:

<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>3.3.4</version>
</dependency>

实现过程:

1.自定义ExcelRemark注解

@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ExcelRemark {/*** 文本内容*/String value( ) default "";/*** 批注行高, 一般不用设置* 这个参数可以设置不同字段 批注显示框的高度*/int remarkRowHigh() default 0;/*** 批注列宽, 根据导出情况调整* 这个参数可以设置不同字段 批注显示框的宽度*/int remarkColumnWide() default 0;
}

2.DTO

public class regionDo {@ExcelProperty("省份")@ExcelRemark(value = "必填")private String province;@ExcelIgnoreprivate String provinceCode;@ExcelProperty("地市")@ExcelRemark(value = "必填")private String city;
}

3.批注处理类

public class CommentCellWriteHandler implements CellWriteHandler {private final Map<Integer, ExcelComment> notationMap;public CommentCellWriteHandler(Map<Integer, ExcelComment> notationMap) {this.notationMap = notationMap;}@Overridepublic void afterCellCreate(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, Cell cell, Head head, Integer relativeRowIndex, Boolean isHead) {//表头批注if (isHead){Sheet sheet = writeSheetHolder.getSheet();//画布Drawing<?> drawingPatriarch = sheet.createDrawingPatriarch();if (!CollectionUtils.isEmpty(notationMap) && notationMap.containsKey(cell.getColumnIndex())){ExcelComment excelComment = notationMap.get(cell.getColumnIndex());if (Objects.nonNull(excelComment)){Comment comment = drawingPatriarch.createCellComment(new XSSFClientAnchor(0, 0, 0, 0, (short) cell.getColumnIndex(), 0, (short) excelComment.getRemarkColumnWide(), 1));comment.setString(new XSSFRichTextString(excelComment.getRemarkValue()));cell.setCellComment(comment);}}}}/*** 获取批注Map**/public static Map<Integer, ExcelComment> getNotationMap(Class<?> clazz) {Map<Integer, ExcelComment> notationMap = new HashMap<>();Field[] fields = clazz.getDeclaredFields();//不使用下面方法,就必须指定@ExcelProperty的indexint index = -1;for (Field field : fields) {++index;if (!field.isAnnotationPresent(ExcelRemark.class)) {//不需要批注 并且 是无需导出字段则 索引回归if (field.isAnnotationPresent(ExcelIgnore.class)) {--index;}continue;}//批注存放实体ExcelComment excelComment = new ExcelComment();//获取字段批注注解ExcelRemark ExcelRemark = field.getAnnotation(ExcelRemark.class);excelComment.setRemarkValue(ExcelRemark.value());excelComment.setRemarkColumnWide(ExcelRemark.remarkColumnWide());notationMap.put(index, excelComment);}return notationMap;}}

5.注册器

EasyExcel.write(response.getOutputStream(), RegionDo.class).registerWriteHandler(new CommentCellWriteHandler(CommentCellWriteHandler.getNotationMap(RegionDo.class))).sheet("sheet1")..doWrite(regionDoList)

引用:
https://blog.csdn.net/qq_43049310/article/details/130697234
https://blog.csdn.net/m0_61013974/article/details/134947917

http://www.zhongyajixie.com/news/1174.html

相关文章:

  • wordpress的功能简介霸榜seo
  • c2c平台购物流程苏州优化收费
  • 集团做网站百度风云榜明星
  • 河北高端网站建设整合营销的概念
  • 其他公司盗用公司名做网站网站排名点击工具
  • 德阳北京网站建设免费制作个人网站
  • 网站蜘蛛屏蔽怎样恢复百度网页浏览器
  • 机械免费网站制作贺贵江seo教程
  • 上海市做网站南宁优化推广服务
  • 快速web网站开发产品营销网站建设
  • 申请注册一个商标多少钱seo广告平台
  • 成都美食网站设计论文如何修改百度上面的门店号码
  • 金科网站建设郑州网站推广报价
  • 什么网站可以做论文泉州seo按天收费
  • 网站设计的公司价格百度网站排名规则
  • 重庆城市建设档案馆官方网站谷歌排名查询
  • 企业门户网站建设市场卫星电视安装视频
  • 网站表格怎么做短视频拍摄剪辑培训班
  • asp.net 做网站qq空间秒赞秒评网站推广
  • 中邮保险网站企业网站优化外包
  • 聊城做网站费用价位搜索引擎优化 简历
  • 中小企业网站制作软件网络营销网站推广方案
  • 旅游网站案例yandx引擎入口
  • 网站域名怎么做变更网站建设公司服务
  • 自己做的网站程序怎么发布太原网站建设优化
  • 品牌建设 社会意义佛山企业用seo策略
  • 丽水企业网站建设百度联盟广告点击一次收益
  • 制作动态表情的网站seo研究中心官网
  • 免费网络咨询免费建站游戏推广话术
  • 个人做网站猛赚钱百度seo收录