簡體   English   中英

加載JDBC驅動程序中的classNotFoundException

[英]classNotFoundException in Loading JDBC Driver

我是Java的新手,並且正在Netbeans 6.9.1 IDE上開發Java EE應用程序。 我必須將Java應用程序與SQL Server 2005連接。

為此,我已經下載了sqljdbc.jar文件,並將其放入系統中的C:\\Program Files (x86)\\Microsoft SQL Server\\JDBC Drver\\lib ,並在命令提示符下設置了它的類路徑,如下所示

set classpath=.;C:\Program Files (x86)\Microsoft SQL Server\JDBC Drver\lib\sqljdbc.jar

並通過右鍵單擊主項目並選擇其屬性並選擇庫來在IDE中設置類路徑。 然后在編譯選項卡中添加了sqljdbc.jar ,但是當我執行此代碼時

import java.sql.*;
/**
 *
 * @author abc
 */
public class DBConnection
{
public Connection dbConnect(String db_connect_string)
        {
                try
                {

                        Class.forName(
                          "com.microsoft.jdbc.sqlserver.SQLServerDriver");

                        Connection conn =
                          DriverManager.getConnection(db_connect_string);

                        System.out.println("connected");
                        return conn;

                }
                catch (Exception e)
                {
                        System.out.println(e);
                    e.printStackTrace();
                        return null;
                }
        }
}

它在此行Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");上給我ClassNotFound錯誤Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

您需要檢查SQL Server版本隨附的JDBC驅動程序文檔。 在舊的SQL Server 2000中 ,JDBC驅動程序類名與您所擁有的類似:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

但是,從SQL Server 2005開始 ,Microsoft更改了JDBC驅動程序類名稱:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

相應地修復它。

請注意,Netbeans和所有其他不錯的Java程序將忽略 CLASSPATH環境變量。 忘記它,甚至不要嘗試設置它,直到您了解它為什么存在以及它的用途。

如果您使用Maven,則可以嘗試將以下內容添加到pom.xml中:

<dependency> 
<groupId>com.microsoft.sqlserver</groupId> 
<artifactId>sqljdbc4</artifactId> 
<version>4.0</version> 
</dependency> 

你能試一下嗎:

set classpath=.;"C:\Program Files (x86)\Microsoft SQL Server\JDBC Drver\lib\sqljdbc.jar"

如果不是這樣,請嘗試使用名稱短的名稱替換文件夾。 要獲取短名稱,請嘗試

dir /-n

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM