jdbc的小问疑惑 我今天突然发现,不进行任何驱动程序注册的时候,打印DriverManager.getDrivers()竟然有输出。。值为sun.jdbc.odbc.JdbcOdbcDriver@3aa450bb这是为什么?难道是myeclipse干得? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 现在的JDBC可以这样了~~~貌似JDBC4以后就可以了,放心用吧当然你还是要手工加载也是可以的 专门测了下 我这边显示的是java.util.Vector$1@a62fc3 这个正好跟源码里面的java.util.Vector<Driver> result = new java.util.Vector<Driver>()吻合 默认的这个应该是JDBC-ODBC桥接的驱动程序,如果你配置ODBC源,使用ODBC桥接的话 可以不用显式加载sun.jdbc.odbc.JdbcOdbcDriver 这个驱动但是如果你用纯JDBC连接其他数据库,应该还是要执行Class.forName等的一般过程 貌似符合逻辑,默认提供odbc的jdbc驱动至于是不是默认就有可以看看sun.jdbc.odbc.JdbcOdbcDriver的实现是不是默认就被jvm加载了是不是在jre就提供了 DriverManager.loadInitialDrivers() {}这个方法会去加载sun.jdbc.odbc.JdbcOdbcDriver这个方法在调用getConnection()时会仅且加载一次 在java自动生成hashCode代码问题? 请大神赐教 Swing容器和Jdbc的执行顺序问题 数据库公式字段 问个有关java布局layoutManager的问题,贴内附代码 有关于JAVA的动画的程序 一个applet时钟程序,有错,望君能帮助改改!!! char c = '\u00A0'; \u00A0是什么意思? 求救: 苹果版的LookandFeel , 哪位大侠有? 下面代码可以编译后运行,但怎么能显示出网页中的汉字而不是乱码? Applet与Servlet之间的通讯方式问题 看看错哪了。。。 在线测试:Time Limit Exceeded
当然你还是要手工加载也是可以的
这个正好跟源码里面的java.util.Vector<Driver> result = new java.util.Vector<Driver>()吻合
但是如果你用纯JDBC连接其他数据库,应该还是要执行Class.forName等的一般过程
至于是不是默认就有可以看看sun.jdbc.odbc.JdbcOdbcDriver的实现是不是默认就被jvm加载了
是不是在jre就提供了
这个方法会去加载sun.jdbc.odbc.JdbcOdbcDriver这个方法在调用getConnection()时会仅且加载一次