问题描述
class QueryExecutor {
private List<T> executeOn(String tableName) {
ResultSetExtractor<List<Pojo>> resultSetExtractor =
JdbcTemplateMapperFactory
.newInstance()
.addKeys("id")
.newResultSetExtractor(Pojo.class);
return emptyIfNull(jdbcTemplate.query("select * from " + tableName,resultSetExtractor));
}
}
在我的控制器中,我只注入了 QueryExecutor,一切都很好。
当我跑步时:
CompletableFuture.runAsync(() -> queryExecutor.executeOn("my_table"));
我收到此异常:
org.springframework.dao.DataAccessResourceFailureException: 语句回调; sql [select * from my_table];这个连接有 已关闭。嵌套异常是 org.postgresql.util.PsqlException: 此连接已关闭。
我的配置是:
@Primary
@Bean(name = "dataSource")
@ConfigurationProperties(prefix = "spring.datasource.hikari")
public HikariDataSource dataSource() {
return dataSourceProperties().initializeDataSourceBuilder()
.type(HikariDataSource.class).build();
}
@Bean(name = "jdbcTemplate")
public JdbcTemplate jdbcTemplate(@Qualifier("dataSource") DataSource dataSource) {
return new JdbcTemplate(dataSource);
}
有什么想法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)