在springboot中使用jdbcTemplate(6)

TableSaw是一个基于二维表进行数据处理和计算的java第三方包。

可以认为是java版的pandas。它提供了从jdbc ResultSet构建Table对象的方法。

由于在项目中经常使用jdbcTemplate,我想知道能不能直接从jdbcTemplate生成table,搜索了一下还真可以。

先贴下pom

<dependency>
            <groupId>tech.tablesaw</groupId>
            <artifactId>tablesaw-core</artifactId>
            <version>0.42.0</version>
        </dependency>

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
            <version>${spring-boot.version}</version>
        </dependency>

上代码,jdbcTemplate虽然不能直接生成ResultSet,但它提供了一个回调接口ResultSetExtractor,利用它,我们就能拿到本次query的ResultSet

Table table = dynamicJdbcTemplate.query("select a,b,c from t", new ResultSetExtractor<Table>() {
                        @Override
                        public Table extractData(ResultSet resultSet) throws SQLException, DataAccessException {
                            return Table.read().db(resultSet);
                        }
                    });

就是这么简单,一个table对象就生成了,不管你是什么表,也不管你有没有Bean,没有进行负责的RowMapper映射,厉害不厉害!

posted @ 2022-02-24 10:18  Mars.wang  阅读(98)  评论(0编辑  收藏  举报