JDBC を使用して Java で Microsoft SQL Server 2005 に接続しようとしていますが、次の例外が発生します。私のプロジェクトは Eclipse で実行されていません。「要求されたリソースが見つかりません」(すべてのサーバー構成を完了し、サーバーからプロジェクトを追加および削除する) と表示され、コンソールから実行すると「Class not found exception」と表示されます。ビルド パスを使用して JAR を作成し、WEB-INF/lib にも配置します。しかし、次の接続が得られないのは私のコードです。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import com.microsoft.sqlserver.jdbc.SQLServerDriver;
/**
* @author www.javaworkspace.com
*
*/
public class SMSdao {
public static void main(String[] args) {
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection connection = DriverManager
.getConnection(
"jdbc:sqlserver://192.128.10.17:1433;databaseName=TEK_R;selectMethod=cursor",
"sa", "sai@123");
System.out.println("DATABASE NAME IS:"
+ connection.getMetaData().getDatabaseProductName());
Statement statement = connection.createStatement();
ResultSet resultSet = statement
.executeQuery("SELECT * FROM dbo.SMS_OUT");
while (resultSet.next()) {
System.out.println("Message:"
+ resultSet.getString("MessageIn"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
AND スタック トレースは次のとおりです。
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at SMSdao.main(SMSdao.java:13)
すべてを試し、ウェブで見つけたすべてのことを行いました。Windows 7でjdk 7とtomcat 6を使用しています。