关于jxls导出表格时在Excel中定义SQL

对于一些特殊的数据导出是一个特别让人头疼的问题!但是这样的数据呢还需要导出。

例如:导出数据不能一次查出来,需要二次查询,但是二次查询的SQL又是动态拼写的!如果多层封装容易乱,而且不好理解。

可以直接在java类里动态定义字符串,然后以变量的形式传入Excel,拼成SQL。

下面贴出代码:

	String ppq="select * from test t where t.pkid in ("
			+ "select t2.pkid from test2 t2 "
			+ "where t2.pkid = '";
	String pph = null;
	if (a.length() == 5) {
		pph = "' and t2.name like '" + a
			+ "'||'%' ";
	} else if (a.length() == 7) {
		pph = "' and name = '" + a + "'";
	} 
	pph += ")";
	beans.put("ppq", ppq);
	beans.put("pph", pph);
在Excel中可以直接用变量往外取,然后按照Excel中定义SQL的标准方法编写就可以了!


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Jxls 是一个开源的 Java 库,用于导出 Excel 文件,它可以在 Java 非常方便地进行使用。下面是使用 Jxls 导出 Excel 的步骤: 1. 添加依赖 在 pom.xml 文件添加以下依赖: ```xml <dependency> <groupId>org.jxls</groupId> <artifactId>jxls-core</artifactId> <version>1.0.15</version> </dependency> ``` 2. 准备 Excel 模板 在 Excel 文件准备好要导出的内容,包括表头和数据部分。可以在表格使用 ${} 来标记需要动态替换的数据。 3. 准备数据 在 Java 代码准备好要导出的数据,可以使用 List 或者 Map 等类型来保存数据。 4. 创建模板引擎 使用 Jxls 提供的模板引擎创建一个模板,可以使用以下代码: ```java InputStream is = new FileInputStream(new File("template.xls")); Workbook workbook = WorkbookFactory.create(is); Transformer transformer = TransformerFactory.createTransformer(workbook, outputStream); ``` 其,“template.xls”是你准备好的 Excel 模板文件名,outputStream 是导出文件的输出流。 5. 填充数据 使用 Jxls 提供的 API 填充数据,可以使用以下代码: ```java Map<String, Object> beans = new HashMap<>(); beans.put("dataList", dataList); transformer.transformXLS(new HashMap<>(), beans); ``` 其,“dataList”是你准备好的数据,transformer.transformXLS() 方法将会把数据填充到模板。 6. 输出文件 使用 Jxls 提供的 API 输出文件,可以使用以下代码: ```java transformer.flush(); outputStream.close(); ``` 这样就可以将 Excel 文件导出到 outputStream 了。 以上是使用 Jxls 导出 Excel 的基本步骤,你可以根据自己的需求进行更多的调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉立琦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值