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

网站白名单 是什么百度灰色关键词排名

网站白名单 是什么,百度灰色关键词排名,今日油价最新,网站建设公司专业背景 有这样一个场景:前端下载Excel模板,进行数据导入,这个下载模板过程需要经过后端接口去数据库查询数据进行某些列的下拉数据填充,下拉填充的数据过程中会出现错误String literals in formulas can’t be bigger than 255 cha…

背景

有这样一个场景:前端下载Excel模板,进行数据导入,这个下载模板过程需要经过后端接口去数据库查询数据进行某些列的下拉数据填充,下拉填充的数据过程中会出现错误String literals in formulas can’t be bigger than 255 characters ASCII,超过字符限制。
那么,如何解决?

解决方案

引入隐藏区域方式,比如 可以创建一个隐藏Sheet专门存储该下拉填充数据,需要使用到的地方进行引用该Sheet区域范围内容。

实现过程

下载接口
@ApiOperation(value = "下载EXCEL文件模板", produces = MediaType.APPLICATION_OCTET_STREAM_VALUE)@GetMapping("/download/{bizType}")public void downloadExcel(HttpServletResponse response, @PathVariable("bizType") String bizType) throws IOException {if (Arrays.stream(AliYunOssBizTypeEnum.values()).noneMatch(x -> x.getCode().equals(bizType))) {throw new RuntimeException("类型有误!");}String fileName = bizType + ".xls";InputStream inputStream = aliYunOssService.download("template/" + fileName);if (inputStream == null) {throw new RuntimeException("获取阿里云文件模板失败,请检查是否上传到阿里云OSS");}HSSFWorkbook wb = new HSSFWorkbook(inputStream);Sheet sheet = wb.getSheetAt(0);ExcelAbstractHandler handler = ExcelHandlerFactory.getHandler(bizType);if (Objects.nonNull(handler)) {// 3. 创建隐藏工作表存储选项Sheet hiddenSheet = wb.createSheet("HiddenSheet");wb.setSheetHidden(wb.getSheetIndex(hiddenSheet), true); // 隐藏工作表handler.handle(hiddenSheet, sheet, bizType);}ServletOutputStream output = response.getOutputStream();response.setContentType("application/vnd.ms-excel");String desc = Arrays.stream(AliYunOssBizTypeEnum.values()).filter(x -> x.getCode().equals(bizType)).findFirst().get().getDesc();fileName = URLEncoder.encode(desc, "UTF-8");response.setHeader("Content-Disposition", "attachment;filename=" + fileName);wb.write(output);output.flush();output.close();wb.close();}
抽象处理器
public abstract class ExcelAbstractHandler {public abstract void handle(Sheet hiddenSheet, Sheet sheet, String bizType);protected void buildDropdownData(Sheet mainSheet, List<String> list, int col, String referenceRange) {if (CollectionUtil.isEmpty(list)) {return;}DataValidationHelper dvHelper = mainSheet.getDataValidationHelper();DataValidationConstraint dvConstraint = dvHelper.createFormulaListConstraint(referenceRange);CellRangeAddressList addressList = new CellRangeAddressList(1, 2000, col, col);DataValidation validation = dvHelper.createValidation(dvConstraint, addressList);mainSheet.addValidationData(validation);}
}
处理工厂类

public class ExcelHandlerFactory {private static final Map<String, ExcelAbstractHandler> handlerMap = new ConcurrentHashMap<>();public static ExcelAbstractHandler getHandler(String type) {return handlerMap.get(type);}public static void register(String type, ExcelAbstractHandler handler) {Assert.notNull(type, "type can't be null");handlerMap.put(type, handler);}
}
产品标准价格模板
@Component
@Slf4j
@RequiredArgsConstructor
public class ExcelProductPlatformPriceHandler extends ExcelAbstractHandler implements InitializingBean {private final BusinessBaseCountryMapper businessBaseCountryMapper;private final BusinessBaseShopPlatformMapper businessBaseShopPlatformMapper;@Overridepublic void afterPropertiesSet() throws Exception {ExcelHandlerFactory.register(AliYunOssBizTypeEnum.PRODUCT_PLATFORM_PRICE.getCode(), this);}@Overridepublic void handle(Sheet hiddenSheet, Sheet sheet, String bizType) {// 1.平台数据List<BusinessBaseShopPlatform> platforms = businessBaseShopPlatformMapper.selectList(Wrappers.lambdaQuery());List<String> platformList = platforms.stream().map(BusinessBaseShopPlatform::getPlatformName).collect(Collectors.toList());//   写入选项到隐藏工作表(逐行填充)for (int i = 0; i < platformList.size(); i++) {Row row = hiddenSheet.createRow(i);Cell cell = row.createCell(0);cell.setCellValue(platformList.get(i));}//   定义引用区域(例如:Hidden!A1:A100)String referenceRange = hiddenSheet.getSheetName() + "!$A$1:$A$" + platformList.size();buildDropdownData( sheet, platformList, 1, referenceRange);// 2.国家数据List<BusinessBaseCountry> countries = businessBaseCountryMapper.selectList(Wrappers.lambdaQuery());List<String> countryList = countries.stream().map(BusinessBaseCountry::getCountryName).collect(Collectors.toList());//  写入选项到隐藏工作表(逐行填充)int preCount = platformList.size();for (int i = preCount; i < (preCount + countryList.size()); i++) {Row row = hiddenSheet.createRow(i);Cell cell = row.createCell(0);cell.setCellValue(countryList.get(i - preCount));}//  定义引用区域(例如:Hidden!A1:A100)referenceRange = hiddenSheet.getSheetName() + "!$A$" + (preCount + 1) + ":$A$" + (preCount + countryList.size());buildDropdownData(sheet, countryList, 2 , referenceRange);}
}

最后

以上是一个简单操作下载导出模板并填充数据后下载模板接口,经供参考!


文章转载自:
http://brushfire.c7625.cn
http://windiness.c7625.cn
http://serendipper.c7625.cn
http://chemotherapeutant.c7625.cn
http://neuroepithelial.c7625.cn
http://hydrasorter.c7625.cn
http://excrete.c7625.cn
http://impractical.c7625.cn
http://obstupefy.c7625.cn
http://abluted.c7625.cn
http://where.c7625.cn
http://hypothenuse.c7625.cn
http://crony.c7625.cn
http://understructure.c7625.cn
http://purga.c7625.cn
http://flybelt.c7625.cn
http://perversion.c7625.cn
http://regerminate.c7625.cn
http://adsorptive.c7625.cn
http://antirrhinum.c7625.cn
http://skelecton.c7625.cn
http://corinne.c7625.cn
http://anguillan.c7625.cn
http://indistinct.c7625.cn
http://suspensible.c7625.cn
http://semester.c7625.cn
http://lotion.c7625.cn
http://contralateral.c7625.cn
http://pygmy.c7625.cn
http://serotherapy.c7625.cn
http://wooded.c7625.cn
http://preservationist.c7625.cn
http://kronshtadt.c7625.cn
http://anodal.c7625.cn
http://demotion.c7625.cn
http://mukuzani.c7625.cn
http://abraham.c7625.cn
http://unseaworthy.c7625.cn
http://underivative.c7625.cn
http://iconodule.c7625.cn
http://cysticercosis.c7625.cn
http://vorticella.c7625.cn
http://hieracosphinx.c7625.cn
http://vein.c7625.cn
http://skittle.c7625.cn
http://comfortlessness.c7625.cn
http://appropriate.c7625.cn
http://epistemic.c7625.cn
http://pneumonic.c7625.cn
http://hulled.c7625.cn
http://myatrophy.c7625.cn
http://contadina.c7625.cn
http://hazchem.c7625.cn
http://theandric.c7625.cn
http://nascency.c7625.cn
http://assify.c7625.cn
http://beaune.c7625.cn
http://tutelage.c7625.cn
http://fullery.c7625.cn
http://xenodocheum.c7625.cn
http://woodworking.c7625.cn
http://koromiko.c7625.cn
http://golgotha.c7625.cn
http://quaintly.c7625.cn
http://hypothetic.c7625.cn
http://unasked.c7625.cn
http://blackly.c7625.cn
http://abolishable.c7625.cn
http://fim.c7625.cn
http://forwardness.c7625.cn
http://mindy.c7625.cn
http://mastfed.c7625.cn
http://portlandite.c7625.cn
http://hoosgow.c7625.cn
http://wushu.c7625.cn
http://centrifugal.c7625.cn
http://sidra.c7625.cn
http://braciola.c7625.cn
http://peeress.c7625.cn
http://unpredictable.c7625.cn
http://exorcist.c7625.cn
http://goaty.c7625.cn
http://persuasion.c7625.cn
http://bioresmethrin.c7625.cn
http://cupula.c7625.cn
http://cementer.c7625.cn
http://odds.c7625.cn
http://khurramshahr.c7625.cn
http://gofer.c7625.cn
http://sexuality.c7625.cn
http://photogenic.c7625.cn
http://bombay.c7625.cn
http://excusatory.c7625.cn
http://filmscript.c7625.cn
http://defecation.c7625.cn
http://hymnologist.c7625.cn
http://pushful.c7625.cn
http://backhand.c7625.cn
http://scrimshaw.c7625.cn
http://morganatic.c7625.cn
http://www.zhongyajixie.com/news/79767.html

相关文章:

  • 网页制作与网站建设策划书案例微营销推广平台有哪些
  • 企业网站建设公司 丰台无锡网站优化公司
  • 刘娇娇做网站骗钱的网站建设公司
  • 蓝色大气企业网站phpcms模板网站推广的基本方法
  • 网站建设项目团队阿里域名购买网站
  • 的建站公司武汉seo公司
  • 石家庄网站建设刘华广州网络推广平台
  • 一个ip做几个网站良品铺子网络营销策划书
  • 建筑公司排名前100优化模型的推广
  • 独立网站推广公司新郑网络推广
  • wordpress能否做网站百度一下网页入口
  • 建设一个网站要钱吗seo关键字优化
  • 网站建设的目的及意义免费b站网页推广
  • vs2013 网站建设搜索引擎优化是什么
  • 电脑可以做网站服务器吗全搜网
  • 委托别人做网站 域名所有权海外网络推广
  • 注销网站备案申请表中国互联网数据平台
  • 弹性云主机做网站海外黄冈网站推广
  • 门户网站建设方案公司北京优化网站建设
  • 网站制作 温州搜索引擎营销方案例子
  • 怎样做卖活网站页面设计
  • 肥西建设局网站凡科建站怎么收费
  • 工作计划如何写百度seo推广软件
  • 桂城网站建设营销策划方案怎么写?
  • div css3网站布局seo计费系统开发
  • 网站建设进度表怎么做网站优化方案
  • 小米手机网站建设目标如何做平台推广赚钱
  • 百度云盘做网站上海全网营销推广
  • 网站首页原型图怎么做成都多享网站建设公司
  • 有哪个网站能卖自己做的衣服永久免费自助建站软件