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

网站找谁备案垂直行业门户网站有哪些

网站找谁备案,垂直行业门户网站有哪些,装修免费咨询平台,商业网站和企业网站的区别在 Spring Boot 中结合 EasyExcel 实现动态表头导出#xff08;无实体类#xff0c;表头和字段#xff08;前端传表名#xff0c;字段值动态查询#xff0c;返回ListMapString,Object#xff09;由前端传递#xff09;可以通过以下步骤实现。以下是完整…在 Spring Boot 中结合 EasyExcel 实现动态表头导出无实体类表头和字段前端传表名字段值动态查询返回ListMapString,Object由前端传递可以通过以下步骤实现。以下是完整示例 1. 前端请求数据结构 假设前端传递的 JSON 格式如下 {headers: [{title: 姓名, field: name},{title: 年龄, field: age},{title: 城市, field: city}],data: [{name: 张三, age: 25, city: 北京},{name: 李四, age: 30, city: 上海}] }2. 后端 DTO 定义 定义接收参数的 DTO 类 Data public class ExportRequest {private ListHeader headers;private ListMapString, Object data;Datapublic static class Header {private String title; // 表头名称private String field; // 数据字段名} }3. Controller 层接口 处理导出请求 RestController public class ExportController {Autowiredprivate ExportService exportService;PostMapping(/export)public void exportExcel(RequestBody ExportRequest request, HttpServletResponse response) {exportService.export(request, response);} }4. Service 层实现 核心导出逻辑 Service public class ExportService {public void export(ExportRequest request, HttpServletResponse response) {try {// 设置响应头response.setContentType(application/vnd.openxmlformats-officedocument.spreadsheetml.sheet);response.setCharacterEncoding(UTF-8);String fileName URLEncoder.encode(动态导出.xlsx, UTF-8);response.setHeader(Content-Disposition, attachment; filename fileName);// 获取输出流OutputStream outputStream response.getOutputStream();// 动态构建表头和数据WriteSheet writeSheet EasyExcel.writerSheet(Sheet1).build();ExcelWriter excelWriter EasyExcel.write(outputStream).build();// 动态添加表头WriteTable writeTable new WriteTable();ListListString head buildHead(request.getHeaders());writeTable.setHead(head);// 动态填充数据ListListObject data buildData(request.getHeaders(), request.getData());excelWriter.write(data, writeSheet, writeTable);// 关闭流excelWriter.finish();outputStream.flush();} catch (IOException e) {throw new RuntimeException(导出失败, e);}}// 构建表头private ListListString buildHead(ListExportRequest.Header headers) {ListListString head new ArrayList();for (ExportRequest.Header header : headers) {ListString columnHead Collections.singletonList(header.getTitle());head.add(columnHead);}return head;}// 构建数据行private ListListObject buildData(ListExportRequest.Header headers, ListMapString, Object dataList) {ListListObject data new ArrayList();for (MapString, Object rowData : dataList) {ListObject row new ArrayList();for (ExportRequest.Header header : headers) {row.add(rowData.get(header.getField()));}data.add(row);}return data;} }5. 关键点说明 动态表头 通过 buildHead() 方法将前端传递的 headers 转换为 EasyExcel 需要的 ListListString 格式。 动态数据 通过 buildData() 方法根据 headers 中定义的 field 字段顺序从 data 中提取对应值构建数据行。 流式导出 使用 ExcelWriter 直接操作输出流避免内存溢出适合大数据量。 6. 测试与验证 使用 Postman 发送请求 URL: POST http://localhost:8080/export BodyJSON {headers: [{title: 姓名, field: name},{title: 年龄, field: age},{title: 城市, field: city}],data: [{name: 张三, age: 25, city: 北京},{name: 李四, age: 30, city: 上海}] }响应浏览器自动下载 动态导出.xlsx内容如下 姓名年龄城市张三25北京李四30上海 7. 扩展优化 字段校验确保前端传递的 field 在 data 中存在对应值。大数据量分页如果数据量过大可分页查询后分批写入。自定义样式通过 WriteHandler 动态设置单元格样式如字体、颜色。 通过这种方式无需定义实体类即可实现完全动态的 Excel 导出功能表头和字段完全由前端控制。
http://www.dnsts.com.cn/news/96604.html

相关文章:

  • 辽宁省建设部网站下载整个网站的软件
  • 广州市黄埔区建设局网站ps做登录网站
  • 国内大型网站制作太原网络推广公司哪家好
  • 天柱建设局网站网站建设需求说明文档
  • 如何在电商平台做好企业网站推广招商项目
  • 做网站需要掌握的技术做设计什么兼职网站建设
  • 国外js建设网站微网站内容
  • 国外源码下载网站四川省肿瘤医院
  • 简述网站建设及维护全过程没有备案的网站可以做淘宝客
  • 海口可信的海南网站建设手机网站制作与建设
  • 云南个旧建设局网站页面设计升级访问
  • 做deal网站企业网站源码 企业网站管理系统
  • 郑州高端网站哈尔滨如何快速建站
  • 新网站建设总结沙井网站制作
  • 登录河北建设厅网站进入不了wordpress免费搭建博客
  • 如何做婚介网站适合做推广的平台
  • 浙江艮威水利建设有限公司网站奇迹网站自己做
  • 青州网站建设优化推广私人订制旅游网站建设
  • 简单网站建设 有教程视频营销技巧第一季
  • 淘宝加盟网站建设网店美工设计的四大要点
  • 网站正在建设中末班建设c2c网站需要多少投资
  • 电子商务网站建设需求分析空包网站做红章底单
  • 制作个网站需要多少钱北京百度seo排名
  • 织梦网站怎么居中关键词看片
  • 网站的制作流程有哪些步骤国贸行业 网站建设
  • 长春建设厅网站wordpress添加百度地图吗
  • 做vr网站网站首页几天做完
  • 找券网站怎么做手机上免费制作ppt的软件
  • 最好的免费的黄页网站网站开发 华景新城
  • 网站转化率建设个人银行网站