gpt4 book ai didi

java - Spring JDBC - Kafka Consumer 的可重试异常

转载 作者:行者123 更新时间:2023-11-30 06:28:40 25 4
gpt4 key购买 nike

我正在使用 Spring Kafka 消费者读取 Kafka 主题之外的消息。我将这些持久保存在 Oracle DB 中。每当出现数据库连接错误时,我都想执行重试。我正在使用 Spring JDBC 连接到 Oracle DB。如果我需要仅重试 JDBC 连接问题,我需要添加哪些异常类列表。

private static Map<Class<? extends Throwable>, Boolean> retryableExceptions;

static{
retryableExceptions = new HashMap<>();
retryableExceptions.put(Exception.class, true);
}
protected RetryPolicy retryPolicy() {
SimpleRetryPolicy policy = new SimpleRetryPolicy(maxRetryAttempts, retryableExceptions);
return policy;
}

最佳答案

我认为你只需要这个:

/**
* Data access exception thrown when a resource fails completely:
* for example, if we can't connect to a database using JDBC.
*
* @author Rod Johnson
* @author Thomas Risberg
*/
@SuppressWarnings("serial")
public class DataAccessResourceFailureException extends NonTransientDataAccessResourceException {

只要您使用 JdbcTemplate 执行 JDBC 操作,连接的任何低级错误都会包装到此 DataAccessResourceFailureException 或其子类中。

关于java - Spring JDBC - Kafka Consumer 的可重试异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46574188/

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