[英]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.