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

阿里云备案成功怎么建设网站wordpress 媒体播放

阿里云备案成功怎么建设网站,wordpress 媒体播放,做数学题网站,山西太原建站哪家弿文章目录 前言依赖引入绘制 jxls 批注的 excel 模板测试类编写自定义命令关于自动换行 前言 之前的博客中都简单说了数据的渲染和导出excel文件。包括固定的 表头结构#xff0c;以及动态 表头和表数据等方式。 本篇博客主要说明自定义命令的方式#xff0c;控制输出excel文… 文章目录 前言依赖引入绘制 jxls 批注的 excel 模板测试类编写自定义命令关于自动换行 前言 之前的博客中都简单说了数据的渲染和导出excel文件。包括固定的 表头结构以及动态 表头和表数据等方式。 本篇博客主要说明自定义命令的方式控制输出excel文件每行记录的行高。 依赖引入 主要依赖以及版本如下所示 dependencygroupIdorg.jxls/groupIdartifactIdjxls/artifactIdversion2.4.5/version /dependency dependency!-- 可以使用poi的实现也可以用jexcelapi的 --groupIdorg.jxls/groupIdartifactIdjxls-poi/artifactIdversion1.0.15/version /dependency dependencygroupIdorg.jxls/groupIdartifactIdjxls-jexcel/artifactIdversion1.0.7/version /dependency dependencygroupIdnet.sf.jxls/groupIdartifactIdjxls-core/artifactIdversion1.0.6/version /dependency绘制 jxls 批注的 excel 模板 其中两个批注分别如下 整体数据范围 Administrator: jx:area(lastCell”H3”) 列表数据渲染范围 Administrator: jx:each(items“bDatas” var“vo” lastCell“H3” varIndex“ojbIndex” ) 测试类编写 编写一个简单的数据填充逻辑并生成对应的excel文件。代码如下所示 import cn.xj.test.UserPo; import com.google.common.collect.Lists; import org.jxls.builder.xls.XlsCommentAreaBuilder; import org.jxls.common.Context; import org.jxls.util.JxlsHelper; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource;import java.io.*; import java.util.*;public class Test1 {public static void main(String[] args) throws IOException {Context context new Context();// 数据集合ListUserPo dataList Lists.newArrayList();for (int i 0; i 10; i) {UserPo userPo new UserPo();userPo.setNum(1_i);userPo.setName(xj_i);userPo.setAge(i1);userPo.setMail(专注写bug测试中文11111);dataList.add(userPo);}// ${item.num}context.putVar(bDatas,dataList);// 模板文件再resources 目录下Resource resource new ClassPathResource(/report/test_user1.xlsx);InputStream is resource.getInputStream();String outFile System.getProperty(user.dir) File.separatorspringboot-poiFile.separatorpdfFile.separatorSystem.currentTimeMillis() .xlsx;OutputStream outputStream new FileOutputStream(outFile);JxlsHelper jxlsHelper JxlsHelper.getInstance();jxlsHelper.getAreaBuilder().getTransformer();jxlsHelper.processTemplate(is, outputStream, context);// JxlsHelper.getInstance().processTemplate(is, outputStream, context);} }执行后生成excel文件中内容的效果如下所示 每行的行高太大毕竟再模板中就是配置的这么大显得很散乱。此时则可以使用自定义命令的方式动态地修改行高。 自定义命令 jxls中自定义命令可以采取继承 AbstractCommand 类实现。自定义命令需要定义命令名称和命令逻辑。如下所示 import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.jxls.area.Area; import org.jxls.command.AbstractCommand; import org.jxls.common.CellRef; import org.jxls.common.Context; import org.jxls.common.Size; import org.jxls.transform.poi.PoiTransformer;/*** 自定义列高指令* 如* jx:autoRowHeight(lastCell C3)** 还需要在对应的主程序中调用*/ public class AutoRowHeightCommand extends AbstractCommand {/*** 批注中的自定义指令* return*/Overridepublic String getName() {return autoRowHeight;}/*** 列高逻辑* param cellRef* param context* return*/Overridepublic Size applyAt(CellRef cellRef, Context context) {Area areagetAreaList().get(0);Size size area.applyAt(cellRef, context);PoiTransformer transformer (PoiTransformer) area.getTransformer();Sheet sheet transformer.getWorkbook().getSheet(cellRef.getSheetName()); // List bDatas (List) context.getVar(bDatas); // int firstDefaultCol cellRef.getCol(); // 最开始的第一列 // if(!CollectionUtils.isEmpty(bDatas)){ // for (int i 0; i bDatas.size(); i) { // // 计算中文、字符的长度 设定列宽 // Object data bDatas.get(i); // if(!StringUtils.isEmpty(data) (data.getBytes().length4)sheet.getColumnWidth(i)){ // sheet.setColumnWidth(ifirstDefaultCol,data.getBytes().length4); // }else{ // sheet.setColumnWidth(ifirstDefaultCol,30); // 默认 // } // // } // }//sheet.setColumnWidth(cellRef.getCol(),50);Row row sheet.getRow(cellRef.getRow());row.setHeight((short) -1);return size;} }自定义命令后需要再模板中增加命令的标识否则不会生效。 jx:autoRowHeight(lastCell “H3”) 其次还需要再调用jxls做填充渲染之前补充命令和逻辑的调用。 import cn.xj.jxls.AutoRowHeightCommand; import cn.xj.test.UserPo; import com.google.common.collect.Lists; import org.jxls.builder.xls.XlsCommentAreaBuilder; import org.jxls.common.Context; import org.jxls.util.JxlsHelper; import org.springframework.core.io.ClassPathResource; import org.springframework.core.io.Resource;import java.io.*; import java.util.*;public class Test1 {public static void main(String[] args) throws IOException {Context context new Context();// 数据集合ListUserPo dataList Lists.newArrayList();for (int i 0; i 10; i) {UserPo userPo new UserPo();userPo.setNum(1_i);userPo.setName(xj_i);userPo.setAge(i1);userPo.setMail(专注写bug测试中文11111);dataList.add(userPo);}// ${item.num}context.putVar(bDatas,dataList);// 模板文件再resources 目录下Resource resource new ClassPathResource(/report/test_user1.xlsx);InputStream is resource.getInputStream();String outFile System.getProperty(user.dir) File.separatorspringboot-poiFile.separatorpdfFile.separatorSystem.currentTimeMillis() .xlsx;OutputStream outputStream new FileOutputStream(outFile);JxlsHelper jxlsHelper JxlsHelper.getInstance();jxlsHelper.getAreaBuilder().getTransformer();// 渲染前 载入 自定义 命令XlsCommentAreaBuilder.addCommandMapping(autoRowHeight, AutoRowHeightCommand.class);jxlsHelper.processTemplate(is, outputStream, context);} }执行后的效果如下所示 关于自动换行 jxls没有对应的自动换行操作但是jxls可以在模板中定义对应的单元格样式。只需要在模板中对需要做自动换行的列增加如下配置。 再次执行上述的代码逻辑查看显示效果。
http://www.dnsts.com.cn/news/229272.html

相关文章:

  • 微信网站结构西安网站建设服务商
  • 做网站要源码吗做网站之前要先购买服务器吗
  • 移动端网站开发与网页开发区别手机微网站价
  • 网站开发网页设计北京师范大学出版社wordpress js效果
  • 大型网站怎样做优化PHP河南县wap网站建设公司
  • 网站建设前准备工作温州网站开发公司
  • 做网站用什么语言最好网站建设设计作业
  • 外贸网站建设方法在深圳做网站
  • 建设网站写需求分析报告企业网站管理系统排名
  • WordPress添加QQ咨询石家庄抖音seo
  • 网站加盟代理公司网站推广计划书怎么做
  • 怎么样在服务器上建设网站整套vi设计机构
  • 南京专业网站制作多少钱android应用程序开发教程
  • 怎么做简单的钓鱼网站昆明微商城开发
  • 做一个棋牌网站要多少钱东莞seo优化
  • 网站建设包括啥有没有专门做商铺招商的网站
  • 唐山市建设局网站wordpress更换文章图片链接
  • 369网站建设中心南方医科大学精品课程建设网站
  • 刷赞网站推广免费链接全球最好的域名注册公司
  • 网站建设对接模版计算机论文
  • 房产网站建设ppt怎么做网站美工
  • 网站建设用的软件邢台信息网123
  • 邯郸哪家公司做企业网站比较专业seo描述是什么意思
  • 学院网站的系统建设方式搜索引擎优化简称seo
  • html5自适应网站模版好康的网站代码
  • 网站建设优化400报价苏州市建设工程建设中心网站
  • 有没有代做课程设计的网站广州互联网项目工作室
  • 宁波网站建设外包wordpress 角色权限表
  • 如何给网站做二维码分类目录网站大全
  • 公司网站开发费计入wordpress 当前位置 页面