gpt4 book ai didi

java - 从 Spring-JDBC 获取结果集

转载 作者:搜寻专家 更新时间:2023-11-01 03:45:40 24 4
gpt4 key购买 nike

我正在使用 Spring 对 JDBC 的支持。我想使用 JdbcTemplate (或 SimpleJdbcTemplate)执行查询并获取结果作为 ResultSet 的实例。

我能看到实现这一目标的唯一方法是使用:

String sql = "select * from....";
SqlRowSet results = jdbcTemplate.queryForRowSet(sql);
((ResultSetWrappingSqlRowSet) results).getResultSet();

这种方法的一个明显缺点是它需要我对 SqlRowSet 的实现类型进行假设(通过强制转换),但是有没有更好的方法?

背景信息...

我想要将结果作为 ResultSet 而不是 bean 集合来获取的原因是因为结果将直接传递给 Jasper 报告以供显示。换句话说,Java bean 除了将每一行临时存储在 ResultSet 中之外别无他用,如果可能,我想避免为每个 Jasper 报告创建这样一个 bean。

干杯,唐

最佳答案

如果您只想执行查询并获得结果,为什么不使用普通的 jdbc 并获取结果集呢?请注意,您不需要 spring 来执行此操作。

    Connection c = ...
c.prepareCall("select ...").getResultSet();

此外,您可以通过将对象用作 DTO 来获得优势。即使您的数据访问或报告工具发生变化,您也不需要更改 DTO 类(假设您开始使用 xquery 而不是 jdbc,或者您使用 apache-poi 而不是 jasper。

关于java - 从 Spring-JDBC 获取结果集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/212569/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com