JDBC遇到问题,竟然不加载驱动就可以操作数据库

SQLServer 2008

JDBC建立连接Connection之前总要先Class.forName 加载驱动吧??
我试了注释掉如下加载驱动的代码,然后发现竟然同样可以操作数据库,到底是为什么啊?

加载驱动代码省略了……发觉浏览器会卡死
全部JDBC代码,我只是在Java源代码的main 方法入口里面写出和测试的,大家不要想太复杂……

自动JDK6之后,JDBC已经升级到4.0了。

JDBC4的一个特性是:
自动加载java.sql.Driver,而不需要再调用class.forName。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-03
你是不是直接new 了一个驱动类 ——!或者之前的程序没有执行完等等
总之没有加载驱动类可以连上只能说明你JVM里已经有了这个对象了。。。
第2个回答  2013-04-03
您好,提问者:
请问是SQL Server2008吗?
你是是不是导入了odbc.jar跟sqljdbc4.jar了?追问

有导入sqljdbc4的jar包,也build path Library 也加进去了……,不用odbc

第3个回答  2013-04-02
应该是容器的配置文件里有加载配置。。。
第4个回答  2013-04-02
后台有加载吧。

JDBC遇到问题,竟然不加载驱动就可以操作数据库
自动加载java.sql.Driver,而不需要再调用class.forName。

java为什么不用加载驱动也能连接数据库??
jdbc4.0 是不用显式的去加载驱动,如果驱动包符合 SPI 模式就会自动加载应该就是原因了。

Java连接数据库,不加载驱动也可以?
嗯,是这样的,首先你会发现这句话会抛出一个异常ClassNotFoundException(无法找到驱动类)驱动是在程序第一次运行的时候进行加载,如果你是发布到服务器上并且加载后运行了一遍,那么第二次注视了确实没有什么问题。这是你的第一个问题。第二个来说就是首先你需要定义好一个针对于数据库的连接,这个...

java连接数据库 为什么一直是 com.mysql.jdbc.Driver类没有找到 驱动也...
检查你的数据库安装好了没 服务开了没 连接的url对不对,数据库名称密码对不对,端口对不对。你可以手动连一下 用jdbc。看看在哪儿出了问题。

为什么数据源可以连接oracle但jdbc不能连接
一、连接MYSQL 格式:mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL。首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 2...

JDBC 加载驱动的问题求大神帮帮我!无法加载驱动我用的是SQL Sever 200...
找不到驱动包。检查下驱动名写正确没有,在检查jar包位置放正确没,然后clean,刷新lib包,再试一试

关于jdbc连接数据库出现No suitable driver found for com.mysql.cj...
需要引用的JDBC驱动jar包或依赖配置没有加载成功、比如 <!-- https:\/\/mvnrepository.com\/artifact\/mysql\/mysql-connector-java --><dependency><groupId>mysql<\/groupId><artifactId>mysql-connector-java<\/artifactId><version>6.0.6<\/version><\/dependency>如果本地没有jar就从打开链接去下载mysql-...

关于mysql jdbc 驱动问题 为什么一直提示我 找不到可用的驱动,难道是...
1 在eclipse里面引用外部库 2 可能是驱动版本问题 一般400多kb

为什么maven编译时不需要jdbc的驱动包
因为jdbc在加载的时候,使用了类的反射,如class.forName("com.mysql.jdbc.Driver"),这样,在编译时,并不去加载驱动,而是在运行期间以反射的方式来检查JDBC驱动的主类com.mysql.jdbc.Driver是否存在。 因此jdbc的驱动在pom文件中,常用的scope为runtime,表示在编译期间不需要参与,测试和运行期间再...

进行jdbc时出现异常,我检查了,表名没有错误,却报异常。急!急!急!_百 ...
肯定是你的表不存在。连接没有问题。madmin表你说存在,那你连接的数据库中是否有这个表?是不是你连接了另一个数据库。1、你查看一下你的数据库名字,和你用JDBC连接的数据库名字是否一致。2、查找另一个存在的表,是否也是这样的异常。3、在查询分析器上查询是否可以。4、!-_-,没办法了。把...

相似回答