1

我已经使用-cp <mysql-connector-java jar file>. 编译过程中没有错误。创建了所有类文件

为了运行代码,我去了一个更高的目录并执行了java packagename.MyPgm.
但是,当我运行这是弹出的错误:

行号错误:-1
java.sql.SQLException:找不到适合 jdbc 的驱动程序:mysql://localhost/feedback?user=root&password=passwd
    在 java.sql.DriverManager.getConnection(DriverManager.java:640)
    在 java.sql.DriverManager.getConnection(DriverManager.java:222)
    在 javaapplication2.HttpHeaderParser.main(HttpHeaderParser.java:69)


导入 com.mysql.jdbc.Connection;
导入 com.mysql.jdbc.PreparedStatement;
导入 com.mysql.jdbc.Statement;
导入java.io.*;
导入 java.sql.DriverManager;
导入java.sql.SQLException;
导入 java.util.ArrayList;

公共类 HttpHeaderParser {

static Connection connect = null;
static Statement statement = null;
public static void main(String[] args) throws IOException {
    try {
        BufferedReader bufferedReader = new BufferedReader(new FileReader(new File("http_headers.txt")));   
        FirstLine firstObj = null;
        SecondLine secondObj;
        OtherFields otherObj;
        connect = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/feedback?"+"user=root&password=sicily");  //this will connect to the database
        statement = (Statement) connect.createStatement();

我这里有一些 java String 操作。然后是 catch 语句。

catch (Exception e) {
        System.out.println("Error in line no: "+lineCount);                 //displays the line number of the input file where the program stopped
        e.printStackTrace();
    }
4

2 回答 2

1

您仍然需要使用类路径参数运行代码。

所以应该是:

java packagename.MyPgm -cp <mysql-connector-java jar file>

试试看,让/

编辑:

应该在创建连接之前添加此行。

样本:

Class.forName("com.mysql.jdbc.Driver");
Connection conn = null;
conn = DriverManager.getConnection("jdbc:mysql://hostname:port/dbname","username",  "password");
conn.close();

编辑2:

仅修复代码的某些部分:

OtherFields otherObj;
Class.forName("com.mysql.jdbc.Driver");
connect = (Connection) DriverManager.getConnection("jdbc:mysql://localhost/feedback?"+"user=root&password=sicily");  //this will connect to the database
statement = (Statement) connect.createStatement();

完成后,编译,

javac HttpHeaderParser.java -cp <mysql jar file>

编译成功后,您需要运行相同的程序。

java HttpHeaderParser -cp <mysql jar file>

但请记住,您编写 JDBC 代码的地方看起来并不合适。

于 2013-04-22T06:42:42.603 回答
1

您需要一个类似于 的文件 ,并在"mysql-connector-java-5.1.17-bin.jar"classpath的程序中对它进行适当的引用

看来您正在替换classpath以仅引用一个文件,您可能至少需要“。” 还。

于 2013-04-22T06:56:35.953 回答