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

什么叫手机网站厦门黄页

什么叫手机网站,厦门黄页,手机网站设计趋势,织梦网站关键词前期准备工作word模板 右键字段如果无编辑域 ctrlF9 一下#xff0c;然后再右键 wps 直接 ctrlF9 会变成编辑域 pom.xml所需依赖 dependencies !--word 依赖-- dependencygroupIdfr.opensagres.xdocreport/groupIdartifactId…前期准备工作word模板 右键字段如果无编辑域 ctrlF9 一下然后再右键 wps 直接 ctrlF9 会变成编辑域 pom.xml所需依赖 dependencies !--word 依赖-- dependencygroupIdfr.opensagres.xdocreport/groupIdartifactIdfr.opensagres.xdocreport.core/artifactIdversion2.0.2/version/dependencydependencygroupIdfr.opensagres.xdocreport/groupIdartifactIdfr.opensagres.xdocreport.document/artifactIdversion2.0.2/version/dependencydependencygroupIdfr.opensagres.xdocreport/groupIdartifactIdfr.opensagres.xdocreport.template/artifactIdversion2.0.2/version/dependencydependencygroupIdfr.opensagres.xdocreport/groupIdartifactIdfr.opensagres.xdocreport.document.docx/artifactIdversion2.0.2/version/dependencydependencygroupIdfr.opensagres.xdocreport/groupIdartifactIdfr.opensagres.xdocreport.template.freemarker/artifactIdversion2.0.2/version/dependency/dependenciesplugins!--模板是放入项目中编辑的时候会破坏模板结构导致模板文件类型不支持pom文件增加文件过滤maven ckean后重试 --plugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-resources-plugin/artifactIdversion2.6/versionconfigurationencodingUTF-8/encodingnonFilteredFileExtensionsnonFilteredFileExtensiondocx/nonFilteredFileExtension/nonFilteredFileExtensions/configuration/plugin/pluginsController 层 Slf4j RestController RequestMapping(/word) public class WordController{Autowiredprivate WordService word;/*** * param response * param query 查询参数*/GetMapping(/export)public void export(HttpServletResponse response, CommonQuery query){word.export(response,query);} }Service 层 public interface WordService {void export(response,query); }package com.Lichao.word;import fr.opensagres.xdocreport.core.XDocReportException; import fr.opensagres.xdocreport.document.IXDocReport; import fr.opensagres.xdocreport.document.registry.XDocReportRegistry; import fr.opensagres.xdocreport.template.IContext; import fr.opensagres.xdocreport.template.TemplateEngineKind; import fr.opensagres.xdocreport.template.formatter.FieldsMetadata; import lombok.extern.slf4j.Slf4j;import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.InputStream; import java.net.URLEncoder; import java.util.ArrayList; import java.util.List;Slf4j Service public class WordServiceImpl {Overridepublic void export(HttpServletResponse response, CommonQuery query) {try {/*测试数据File file new File(C:\\Users\\Licha\\Desktop\\模板.docx);InputStream ins new FileInputStream(file);*///获取Word模板模板存放路径在项目的resources目录下InputStream ins this.getClass().getResourceAsStream(/template/模板.docx);IXDocReport report XDocReportRegistry.getRegistry().loadReport(ins,TemplateEngineKind.Freemarker);IContext context report.createContext();Vo vo 获取写入数据方法(query);//创建要替换的文本变量// 字段 ${title}context.put(title , vo.getTitle());//集合 -- ${list.type} context.put(list , vo.listVos());//创建字段元数据FieldsMetadata fm report.createFieldsMetadata();//Word模板中的表格数据对应的集合类型fm.load(list , ListVo.class, true);/*//输出到本地目录FileOutputStream out new FileOutputStream(new File(C:\\Users\\Licha\\Desktop\\数据.docx));report.process(context, out);*/response.setCharacterEncoding(utf-8);response.setContentType(application/msword);String fileName ledgerVo.getTitle() .docx;response.setHeader(Content-Disposition , attachment;filename.concat(String.valueOf(URLEncoder.encode(fileName, UTF-8))));report.process(context, response.getOutputStream());} catch (IOException e) {log.error(IOException报错 , e);} catch (XDocReportException e) {log.error(XDocReportException报错 , e);} catch (Exception e) {log.error(Exception , e);}} }参考资料 https://blog.csdn.net/plxddyxnmd/article/details/109129838 - 学习 https://www.cnblogs.com/huigee/p/16588297.html - 解决文件读取乱码bug 模板工具类 package com.util.xdoc;import cn.hutool.core.util.ObjectUtil; import com.leader.task.domain.vo.LedgerInfoDataVo; import fr.opensagres.xdocreport.core.XDocReportException; import fr.opensagres.xdocreport.document.IXDocReport; import fr.opensagres.xdocreport.document.registry.XDocReportRegistry; import fr.opensagres.xdocreport.template.IContext; import fr.opensagres.xdocreport.template.TemplateEngineKind; import fr.opensagres.xdocreport.template.formatter.FieldsMetadata; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory;import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.InputStream; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.lang.reflect.Type; import java.net.URLEncoder; import java.util.HashMap; import java.util.Map;/*** word模板工具类* author Lsc* date 2023-12-01*/ public class WordUtil {private static final Logger log LoggerFactory.getLogger(WordUtil.class);/**** param response 返回数据* param data 数据 数据字段要与模板中的字段一一对应* param ins 输入流模板* param title 题目*/public static void exportWord(HttpServletResponse response, Object data , InputStream ins ,String title ){try {IXDocReport report XDocReportRegistry.getRegistry().loadReport(ins,TemplateEngineKind.Freemarker);IContext context report.createContext();Class aClass data.getClass();Field[] declaredFields aClass.getDeclaredFields();MapString, Class? map new HashMap();//创建要替换的文本变量for (Field declaredField : declaredFields) {declaredField.setAccessible(true);context.put(declaredField.getName() , ObjectUtil.isNotEmpty(declaredField.get(data))?declaredField.get(data):);if (declaredField.toString().contains(java.util.List)){String name declaredField.getName();map.put(name , null);}}Method[] methods aClass.getMethods();for (Method method : methods) {//获取方法的名称String methodName method.getName();//判断是否是studentDao中的get方法if(methodName.startsWith(get) !methodName.startsWith(getClass)) {Type genericReturnType method.getGenericReturnType();//获取实际返回的参数名String returnTypeName genericReturnType.getTypeName();if (returnTypeName.contains(java.util.List)){for (String key : map.keySet()) {String substring methodName.substring(3);String uncapitalize StringUtils.uncapitalize(substring);if (uncapitalize.equals(key)){int i returnTypeName.indexOf()1;int i2 returnTypeName.indexOf();String s returnTypeName.substring(i, i2);map.put(key, Class.forName(s));}}}}}//创建字段元数据FieldsMetadata fm report.createFieldsMetadata();for (String k : map.keySet()) {Class? v map.get(k);fm.load(k, v, true);}//Word模板中的表格数据对应的集合类型response.setCharacterEncoding(utf-8);response.setContentType(application/msword);String fileName title .docx;response.setHeader(Content-Disposition , attachment;filename.concat(String.valueOf(URLEncoder.encode(fileName, UTF-8))));report.process(context, response.getOutputStream());} catch (IOException e) {log.error(IOException报错 , e);} catch (XDocReportException e) {log.error(XDocReportException报错 , e);} catch (Exception e) {log.error(Exception , e);}}}
http://www.hkea.cn/news/14411577/

相关文章:

  • 公司网站怎么建立优化体系云主机网站源码
  • 建设银行网站转账科技服务网站建设内容
  • 快速学会做网站centos6安装wordpress
  • excel做网页放进网站网站需要多大数据库
  • asp网站作业下载网店首页设计
  • 建网站建立开源的低代码开发平台
  • 什么是网站风格策划的重点北京网站建设app开发
  • 网站仿制wordpress登录开发
  • 建设工程的在建设部网站国家企业信用公示信息查询平台
  • 网站备案流程及资料东莞长安做网站
  • 做网站要钱嘛网站二级域名怎么弄
  • 合肥哪家公司做网站专业建站策划
  • 用五百丁做名字的简历网站做网站什么商品好
  • 建设外汇网站网站开发实现总结
  • dedecms网站地图模板河南第二建设集团网站视频
  • 上海优秀网站建设公司官网模板源码
  • 做房地产网站建设罗湖医院网站建设
  • 网站效果展示免费网络服务器
  • 一般建一个外贸网站多少钱安装wordpress+000
  • wordpress服务器软件seo实战培训学校
  • 织梦网站地图修改济宁网站建设top
  • 网站程序合同最近中文字幕在线mv免费
  • 以企业介绍为主做外贸网站好吗做网站后开办会员
  • 自贡网站设计网站开发交付
  • 网站做平台怎么制作一个app软件
  • 刚做的单页网站怎么预览wordpress loper
  • 哪有网站建设的贵州省网站建设
  • 网站首页的尺寸做多大新闻发布系统网站模板
  • 做网站广告多少钱wordpress 云共享
  • seo网站推广电话烟台做网站价格