在 JasperReports 中传递 SQL“IN”参数列表
使用“IN”谓词通过 SQL 查询生成 JasperReports 时,动态参数赋值可以通过Java编程来实现。让我们探讨一下如何动态设置“roles”参数的值。
相关查询:
SELECT customer_name AS NAME, id_customer AS ID FROM customer WHERE customer_role IN ($P{roles})
Java 中的参数分配
JasperReports 提供了一个特殊变量 $X,用于动态设置参数。要将值列表分配给“roles”参数,请使用以下语法:
select * from customer where $X{IN,customer_role,roles}
以下是如何在 Java 中以编程方式设置参数值的示例:
// Get a JasperReports instance JasperPrint jasperPrint = jasperReport.fill(parametersMap, dataSource); // Create a new parameter list java.util.List<JRParameter> updatedParameters = new ArrayList<>(); // Add the "roles" parameter with the updated value updatedParameters.add(new JRParameter("roles", ArrayList.class, roles)); // Set the parameter list jasperPrint.setParameters(updatedParameters);
附加说明
以上是如何在 JasperReports 中传递动态 SQL'IN”参数列表?的详细内容。更多信息请关注PHP中文网其他相关文章!