当前位置:Gxlcms > 数据库问题 > 老调重弹:JDBC系列之<驱动加载原理全面解析) ----转

老调重弹:JDBC系列之<驱动加载原理全面解析) ----转

时间:2021-07-01 10:21:17 帮助过:2人阅读

方法用来测试对指定的url,该驱动能否打开这个url连接。driver对自己能够连接的url会制定自己的协议,只有符合自己的协议形式的url才认为自己能够打开这个url,如果能够打开,返回true,反之,返回false;

例如:oracle定义的自己的url协议如下:

jdbc:oracle:thin:@//<host>:<port>/ServiceName

jdbc:oracle:thin:@<host>:<port>:<SID>

oracle自己的acceptsURL(String url)方法如下:

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 public boolean acceptsURL(String paramString) {     if (paramString.startsWith("jdbc:oracle:")) {         return (oracleDriverExtensionTypeFromURL(paramString) > -2);     }       return false; }   private int oracleDriverExtensionTypeFromURL(String paramString) {     int i = paramString.indexOf(58) + 1;       if (i == 0) {         return -2;     }     int j = paramString.indexOf(58, i);       if (j == -1) {         return -2;     }     if (!(paramString.regionMatches(true, i, "oracle", 0, j - i))) {         return -2;     }     ++j;       int k = paramString.indexOf(58, j);       if (k == -1) {         return -3;     }     String str = paramString.substring(j, k);       if (str.equals("thin")) {         return 0;

人气教程排行