【问题标题】:Jooq too many clientsJooq 客户太多
【发布时间】:2020-06-15 15:47:02
【问题描述】:

在我的 Spring Boot 应用程序中使用 jooq 时,我遇到了“客户端太多”错误。 目前我正在自动装配我的 DSLContext 并希望 jooq 自动关闭与我的 postgres 的连接,这显然无法正常工作。 有没有办法手动释放连接?

  @Autowired
  lateinit var dsl: DSLContext


  //further down
  dsl.close() //didn't help

我发现建议做这样的事情的想法(Java 代码,但你明白了;)), 但我想坚持自动装配 DSLContext(如上)而不是 DataSource 本身的想法:

@Autowired
private DataSource dataSource;
//Further down 
Connection con=dataSource.getConnection();
DSLContext create = DSL.using(con, SQLDialect.MYSQL);
//Execute code here
con.close();

【问题讨论】:

  • 确保您使用的是正确的事务管理器并且您正确标记了事务方法。

标签: spring-boot kotlin jooq


【解决方案1】:

可能存在导致您的con.close() 调用被跳过的控制流。但是,您不必使用 jOOQ 手动进行连接管理。只需将 DataSource 传递给您的 DSL.using() 调用即可:

@Autowired
private DataSource dataSource;

//Further down 
DSLContext create = DSL.using(dataSource, SQLDialect.MYSQL);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-05
    • 2012-01-17
    • 2019-06-20
    • 2021-02-13
    • 2019-05-21
    • 2020-10-04
    • 1970-01-01
    相关资源
    最近更新 更多