0

JDBC アプリケーション開発は初めてです。Visual Studio 2005 を使用して JDBC アプリケーションを作成しています。アプリケーションを MS SQL Server 2005 に接続する必要があります。JDBC ドライバー 3.0 をインストールしました。また、私のマシンには Java ランタイム バージョン 1.6 がインストールされています。

SQLサーバーに接続するための簡単なコードを書いています。inviromnet 変数リストに CLASSPATH を設定しました。ここにコードがあります

package MyJDBCApp;

import java.sql.*;
import java.util.*;

public class Connect
{
   public static void main(String[] args)
   {
        String url = "jdbc:sqlserver://NOI1-501791:1433;databaseName=test;user=sa; password=asdf1234;";
        Connection con;
        Statement stmt;
        try
        {
           Class.forName("com.sqlserver.jdbc.SQLServerDriver");
        }
        catch (java.lang.ClassNotFoundException e)
        {
           System.err.print("ClassNotFoundException: ");
           System.err.println(e.getMessage());
        }
        try
        {
            con = DriverManager.getConnection(url);
            if (con != null)
                con.close();
        }
        catch (SQLException ex)
        {
           System.err.println("SQLException: " + ex.getMessage());
        }   
   }
}

このアプリケーションをデバッグしようとすると、クラスが見つからないという例外が発生します。誰でもこの問題を解決するのを手伝ってくれますか?

前もって感謝します。よろしくズバイル

4

1 に答える 1

0

通常、CLASSPATH環境変数は使用しないでください。これはほとんど Java 初期のアーティファクトです。通常、プログラムには独自のプライベート クラスパスがあります。

IDE の内部では、クラスパスはプロジェクトのクラスパス (ビルド パスとも呼ばれます) であり、IDE の外部では通常、Class-Path:jar のマニフェスト内のエントリです。

環境変数はCLASSPATH、クラスパスを設定する他の手段を使用せずにコマンドラインを実行した場合にのみ使用されます (これは、java -jarまたはを使用して行われjava -cpます)。

そのため、JDBC ドライバーをプロジェクトのクラスパスに追加する必要があります。Class.forName(...)また、sqljdbc4.jar (MS SQL Server JDBC 3.0 の JDBC 4 ドライバー) を使用する場合は、 JDBC 4 が自動ドライバー登録を導入したため、実行する必要さえありません。

于 2012-06-29T06:21:32.433 に答える