我想使用Spring Retry修改数据库连接,如果数据库在应用程序启动时关闭,请再次尝试。我不想限制重试次数。我应该如何配置策略来执行此操作。
我当前的代码(我知道在这种状态下它限制为100):
SimpleRetryPolicy policy = new SimpleRetryPolicy(100, Collections.singletonMap(Exception.class, true));
// Use the policy...
RetryTemplate template = new RetryTemplate();
template.setRetryPolicy(policy);
Connection conn = template.execute(new RetryCallback<Connection, Exception>() {
public Connection doWithRetry(RetryContext context) throws Exception {
return getConnectionFactory().createConnection();
}
});
我应该如何修改此代码?
答案 0 :(得分:3)
使用AlwaysRetryPolicy
代替SimpleRetryPolicy
。
但您可能希望在重试之间添加BackOffPolicy
等待。
然后,您可以中断线程以关闭所有内容。