我正在使用JDBC连接到数据库。由于网络速度很慢,我可以在手动重试2或3次后获得连接。如果连接失败,是否可以自动重试连接?我正在使用SQLServer 2008数据库。 感谢
答案 0 :(得分:9)
有一个合适的连接池已经可以配置,例如BoneCP。大多数人甚至默认这样做。如果您不使用连接池而只使用基本DriverManager#getConnection()
方法,那么只要while
为{{1},您就必须在Connection
循环中自行重新执行它}}
这是基本启动示例:
null
这当然可以通过中间更长的暂停和设置最大重试次数来优化,等等。
答案 1 :(得分:2)
这里的代码通过它重新尝试3次连接,你也可以改变cont而不是3这可以改为任意次数(5,10等)
user@host:/tmp/test/1$ ls
736628487.txt R123456.txt Y1235465.jpeg
user@host:/tmp/test/1$ for file in * ; do cp -n $file $(echo $file |sed 's/^[A-Za-z]//') 2>/dev/null; done
user@host:/tmp/test/1$ ls
123456.txt 1235465.jpeg 736628487.txt R123456.txt Y1235465.jpeg