https://github.com/alibaba/druid/blob/c7ad372942d22c507b033b71d4193328bd9e9998/src/main/java/com/alibaba/druid/pool/DruidAbstractDataSource.java#L1391
这行代码result初始值是否修改为false更合适?
当执行validConnectionChecker#isValidConnection检查连接有效性的方法抛出非SQLException的Exception时,会走到
catch (Exception ex) {
error = ex;
}
语句块,此时resule依旧是true,继续执行
if (!result) {
SQLException sqlError = error != null ? //
new SQLException("validateConnection false", error) //
: new SQLException("validateConnection false");
throw sqlError;
}
将无法起到将Exception异常包装成SQLException的目的(我猜测这段代码是这个目的)。