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

阿里巴巴装修网站电子商务网站登录

阿里巴巴装修网站,电子商务网站登录,有没有网站专门做cnc招聘,青岛建设管理局网站目录 前文 业务需求 具体代码 新增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.hyszgw.com/news/61169.html

相关文章:

  • 自建站什么意思临沂市建设局兰山区网站
  • 推广赚钱平台1688关键词怎么优化
  • 设计网站接单自己制作网站该怎么做
  • 南通自助模板建站小米手机做网站服务器吗
  • 学什么可以做网站微信营销的方法7种
  • 家具网站模板下载个人主页写什么内容
  • 陕西住房建设部网站贵州app开发公司
  • 做网站的网站百度的排名规则详解
  • 盐城做网站企业好看手机网站推荐
  • 在百度上如何上传自己的网站wordpress注册无效
  • 广州seo网站营销做网站步骤
  • 自己电脑做的网站如何映射到公网飞机代理ip免费链接
  • 织梦网站如何更新系统合肥seo网站建设
  • 做国外进口衣服的网站番禺大石网站建设
  • 网站建设app是什么网站建设商务合同范本
  • 互联网建站网站内容规划
  • 柳州网站推广重庆建设网站首页
  • 建个简单网站怎么做wordpress主题
  • 从建站到网络优化杭州住房城乡建设网站查询
  • 西昌市做网站的wordpress怎样增加移动端
  • 江苏h5响应式网站建设设计做网站应该先从什么地方开始
  • 平台网站建设方案新开店铺怎么做推广
  • 广东外贸网站推广现在网站建设用什么软件
  • 网站里图片的作用网站一般要设计几页
  • 怎么找网站建设公司北京公司注册网站
  • 做电商有哪些网站有哪些内容保定建站模板
  • 射阳住房和城乡建设局网站装饰设计公司排行榜
  • 和wordpress类似的开源博客seo的基本内容
  • 北京市住房城乡建设行业从业人员考务网站wordpress工具箱
  • 贸易网站设计长沙景点门票价格表