0

言語: Java

プログラム: データベースへの接続

質問: TutorialsPointチュートリアルに従って sqlite データベースに接続しようとしていますが、メイン クラスが見つからないというエラーが発生し続けます。

実装:私のコードは以下にあり、その後に端末コマンドとフォルダー構造のスクリーンショットが続きます。しかし、基本的にすべてのファイルは、sqlite jar ファイルを含む 1 つのフォルダーにあります。

import java.sql.*;

public class Test {
 public static void main(String[] args) {

 Connection c = null;

 try{
   Class.forName("com.sqlite.JDBC");
   c = DriverManager.getConnection("jdbc:sqlite:test.db");
 } catch(Exception e) {
   System.err.println(e.getClass().getName() + ": " + e.getMessage());
   System.exit(0);
 }

 System.out.println("Opened database successfully!");
 }
}

端末コマンド

javac Test.java
java -classpath ".;sqlite-jdbc-3.23.1.jar" Test

ここに画像の説明を入力

4

2 に答える 2

0

あなたの問題は、明示的にクラスをロードしようとしていることでしたがcom.sqlite.JDBC、ドライバーのクラス名は途中でどこかで変更されたに違いありません。

JDBC Type 4 ドライバーには、接続 URL のみを指定できる機能が追加されており、ドライバーは先頭 (つまり ) に基づいて自身をロードしますjdbc:sqlite。ドライバー クラスの名前が何であったかを考える必要はありません。


当面の問題とは関係のない暴言:

残念なことに、人々は専門家ではない人によって書かれた古いチュートリアルを読んでClass.forName()いる.StatementPreparedStatement

于 2018-08-21T20:13:00.863 に答える