poi操作excel涉及多个图片,列表,标题,摘要拼接组合问题

本文探讨了在报表管理模块中,如何根据前端用户勾选的不同选项,动态生成包含图片、统计图及列表的Excel文件。通过SSM框架,详细介绍了从前端传递勾选状态至后端,再由后端根据这些状态创建相应图表并整合进Excel的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

在实际项目之中,特别是遇到报表管理模块,客户会要求,导出excel文件是动态的,其格式应该依据用户勾选条件而变化,比如有四个勾选项,勾选第一个选项显示一张图片,勾选第二个选项显示一张整体统计图,勾选第三个显示n张局部详细图,勾选第四个显示列表。

那么问题来了:

    1.前端如何传递勾选情况?
    2.后台如何对勾选情况进行处理?

问题1: 前端传递一个字符串到后台,以逗号分隔。以ssm框架为例:

 String type1 = request.getParameter("chartType");//获取传递字符串

问题2:
①解析为字符数组

        String stype[] = null;
		stype = type1.split(",");
		System.out.println("前端勾选情况:");
		for(int i = 0;i < stype.length;i++){
			System.out.println("第"+(i+1)+"个:"+stype[i]);
		}

②关键点:对传递的参数进行解析,因为传递参数是有序的,比如 123,不可能是432。所以先将数据产生的相应的图片的地址,按照勾选情况存入图片地址字符串数组。

 if(stype.length == 1){
			//长度为1,取出勾选值,依据勾选值创建相应图表,插入到一个Excel表格里面
				selectFK[0] =  Integer.parseInt(stype[0]);
				if(selectFK[0] == 1)
				imagePathFK[0] = dir+"/rose.png";
				if(selectFK[0] == 2)
				imagePathFK[0] = dir+"/AllWindDistriBution.png";
				if(selectFK[0] == 3)
				{
					for(int i = 0; i < pname.length; i++)
					{
						imagePathFK[i] = dir+"/" + pname[i];
					}
					
				}
				
			}

③传递参数勾选字符串数组,图片地址保存数组到创建excel方法

 wb = WindDistriButionExcel.exportReport(selectFK,imagePathFK,stype,2);

④创建循环,如果勾选参数数组里面有相应的选项,则对excel插入相应内容

for(int j = 0; j < stype.length ; j++){
			//如果勾选了风玫瑰图取imagePath[0]
			 if(Integer.parseInt(stype[j]) == 1){
			   略
			 }
	}

⑤完成格式编辑,测试做细微调整

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值