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

百度网站建设汕头网站建设方案优化

百度网站建设,汕头网站建设方案优化,公众号版影视网站开发,网站在什么地方设关键词目录 前文 业务需求 具体代码 新增Handler 控制层 前文 SpringBoot笔记 | EasyExcel导入导出及基于模板导出_easyexcel模板导出-CSDN博客 业务需求 需要一个导出模板。一个列需要填写固定的值,或者方便用户填写。 自己需求,几个固定的字段对应固…

目录

前文

业务需求

具体代码

新增Handler

控制层


前文

SpringBoot笔记 | EasyExcel导入导出及基于模板导出_easyexcel模板导出-CSDN博客

业务需求

需要一个导出模板。一个列需要填写固定的值,或者方便用户填写。

自己需求,几个固定的字段对应固定的id,所以导出时,用户填写固定字段中文,导入时,通过名字匹配到id,插入数据库。然后网上找了挺多个的,但是要么很复杂,要么就是没说明白,最后找了这个最简单的实现。

具体代码

新增Handler

import com.alibaba.excel.write.handler.SheetWriteHandler;
import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder;
import org.apache.poi.ss.usermodel.DataValidation;
import org.apache.poi.ss.usermodel.DataValidationConstraint;
import org.apache.poi.ss.usermodel.DataValidationHelper;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.util.CellRangeAddressList;import java.util.Map;/*** @Author: ljd* @CreateTime: 2024-10-16*/
public class CustomSheetWriteHandler implements SheetWriteHandler {private Map<Integer, String[]> mapDropDown;public CustomSheetWriteHandler(Map<Integer, String[]> mapDropDown) {this.mapDropDown = mapDropDown;}@Overridepublic void beforeSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {}@Overridepublic void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {Sheet sheet = writeSheetHolder.getSheet();DataValidationHelper helper = sheet.getDataValidationHelper();for (Map.Entry<Integer, String[]> entry : mapDropDown.entrySet()) {CellRangeAddressList addressList = new CellRangeAddressList(1, 65535, entry.getKey(), entry.getKey());DataValidationConstraint constraint = helper.createExplicitListConstraint(entry.getValue());DataValidation dataValidation = helper.createValidation(constraint, addressList);dataValidation.setErrorStyle(DataValidation.ErrorStyle.STOP);dataValidation.setShowErrorBox(true);dataValidation.setSuppressDropDownArrow(true);dataValidation.createErrorBox("提示", "输入值与单元格定义格式不一致");dataValidation.createPromptBox("填写说明", "填写内容只能为下拉数据集中的类型");sheet.addValidationData(dataValidation);}}
}

控制层

为了方便都在写这层

/*** 获取导入模板*/@PostMapping("/importTemplate")@SaIgnorepublic void importTemplate(HttpServletResponse response) throws IOException {//用于下拉的数据源List<EduSubject> subjects = subjectMapper.selectList();if(CollectionUtil.isNotEmpty(subjects)){Map<Integer, String[]> mapDropDown = new HashMap<>();String[] sub = subjects.stream().map(EduSubject::getSubjectName).toArray(String[]::new);mapDropDown.put(1, sub);String fileName = URLEncoder.encode("XXX导入模板", "UTF-8");response.setContentType("application/vnd.ms-excel");response.setCharacterEncoding("utf-8");response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");EasyExcel.write(response.getOutputStream(), EduKnowledgePointsVo.class).sheet("知识点").registerWriteHandler(new CustomSheetWriteHandler(mapDropDown)).doWrite(Collections.EMPTY_LIST);}}

http://www.ds6.com.cn/news/59056.html

相关文章:

  • 如何做公众号影视网站网络推广法
  • 怎么做最简单的网站seo服务外包价格
  • 自助建站加盟有免费推广平台
  • 武进网站建设百度提交入口
  • 网站建设预计费用哈尔滨百度公司地址
  • 昆山设计网站公司大学生网络营销策划方案书
  • bootstrap 企业网站模板全国知名网站排名
  • 镇江网站建设包括哪些合肥网络推广服务
  • 雅安做网站的公司域名服务器地址查询
  • 长沙网站营销湖南seo排名
  • html5网站怎么建设后台怎么弄软文营销平台
  • 网站模板 代码免费seo顾问阿亮
  • 佛山网站优化步骤百度站长平台工具
  • 如何维护给做网站的客户黑科技推广软件
  • 做可视化的网站品牌营销理论
  • 中国vs菲律宾网络seo优化公司
  • 哈尔滨网站建设那家好做网络推广有哪些平台
  • 局网站建设申请优化大师有必要安装吗
  • 公司网站上传图库郴州网站seo外包
  • 北京网站建设策划建设深圳seo优化排名推广
  • 做网站一年赚80亿广告营销策划
  • 专做充电器的网站百度推广登录首页网址
  • 烟台建站价格百度排名点击软件
  • 牟长青 做网站推广的四个基本要点百度竞价推广方案
  • 汕头整站优化企业营销型网站建设
  • 欧美浅蓝色新闻网站css模板360建站官网
  • 天津和平做网站最全磁力搜索引擎
  • 官方网站的优势重庆网站网络推广
  • 织梦 友情链接 网站名 分隔符地推怎么做最有效
  • 成都网站建设怎么样廊坊seo排名收费