java中的forname("驱动类")

来源:百度知道 编辑:UC知道 时间:2024/05/03 14:56:11
谁能告诉我在java和SQL数据库连接的时候不是要先使用Class.forName()加载驱动吗?那个forName后面括号里的驱动类怎么能知道是什么呢?我没有找到啊,我的书上和我在网上看到的,里面分别是“com.microsoft.jdbc.sqlserver.SQLServerDriver”和“sun.jdbc.odbc.JdbcOdbcDriver”等,但是我用了,都不对,都会提示“java.lang.ClassNotFoundException:”应该就是里面的驱动类参数不对吧,可是怎么找到正确的呢?有朋友说“你的驱动程序文档将告诉你应该使用的类名”,可是驱动程序文档怎么看呢?谢谢了,非常弱智的问题,可是偶不知道啊。
大家的回答我都有点似懂非懂,因为是才学这个东西,所以,还希望有人能告诉我具体的操作步骤啊,我是和sql2000进行连接的啊

forName里要写的东西对于每种数据库都有点不一样,每个数据库厂家都有自己的规定,你写出来的那个是连SQLServer的,,你很容易在网上找到连各种数据库的写法.
sun.jdbc.odbc.JdbcOdbcDriver是sun出的,不推荐使用.
在连数据库之前你要把驱动程序的jar包加到classpath里,对于应用程序来说,就是把你驱动程序对应的jar包的路径添加你配置jdk环境时的classpath里,对于web程序来说,就是把你的驱动程序放到\WebRoot\WEB-INF\lib里.
驱动程序你可以到网上找,比如SQLserver的你可以到官方网站找jdbc驱动,安装后会有三个文件,配好classpath就可以使用了(看你的运气吧,你的数据库版本和驱动版本没有问题的话一次就可以连成功,否则可能要打补丁了).

Class.forName()方法实际上是利用了JAVA的反射

机制实现类的动态加载,简单的说就是告诉程序类

名让程序自动去加载这个类的信息.楼主所说的异

常有两种情况,1是完整的类名或者包名打错了,2是

相应的类还没有导入项目.

一般数据库厂商都会为JAVA提供连接数据库的JAR

包,楼主可以根据实际情况下载后导入项目再试,当

然,前提是你要安装了该种数据库.

不同的数据库有不同的连接方法和语句,参看下面的连接,基本上都总结了:
http://hi.baidu.com/cliff77/blog/item/91664a117d744814b8127bae.html

去下载SQLserver的jar包,不是Class.forname的问题,导入jar包到lid就解决了

你用的是什么数据库?我还不太清楚`但是我举个Oracle的例子你应该就会明白了