当前位置: 首页 > 知识库问答 >
问题:

如何从终端运行JDBC代码?

益麻雀
2023-03-14

我已经使用cp编译了我的代码

Error in line no: -1
java.sql.SQLException: No suitable driver found for jdbc:mysql://localhost/feedback?user=root&password=passwd
    at java.sql.DriverManager.getConnection(DriverManager.java:640)
    at java.sql.DriverManager.getConnection(DriverManager.java:222)
    at javaapplication2.HttpHeaderParser.main(HttpHeaderParser.java:69)


导入com.mysql。jdbc。连接
导入com.mysql。jdbc。编制的报表
导入com.mysql。jdbc。声明
导入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字符串操作。然后是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();
    }

共有2个答案

谭晓博
2023-03-14

您仍然需要使用classpath参数运行代码。

所以应该是:

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代码的地方看起来并不合适。

廖绍辉
2023-03-14

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

似乎您正在替换类路径以仅引用一个文件,您可能至少需要”而且

 类似资料:
  • 请先参考这个问题, 无法读取opensslv. h:没有这样的文件或目录 基于此,我需要使用AppleScript运行以下三行终端命令, 我尝试了两种方法,我创建了带有.命令和. sh扩展名的文本文件,并添加了上述三行。然后尝试从AppleScript运行它, 但我犯了这个错误, 这可能行得通, 但它在第三行的终端上请求密码,并等待用户响应。AppleScript中显示的密码对话框(当以管理员权限

  • 问题内容: 我一直在寻找使用Java运行时运行外部程序的方法。可以正常工作,例如: 如您所愿创建一个新目录。现在,在Mac的bash窗口中,我可以这样写: 在名为testgame的文件夹上运行“ Love”游戏引擎。现在,之所以可行,是因为我将“ love”作为别名来调用love可执行文件。我有一种感觉,这是下面没有理由 不 工作: 而且(对于那些想知道的人)也不是: 毫无疑问,这要么是Java方

  • 我使用的是一个安装了Ubuntu的云虚拟机。安装的Java版本为: 在编译java程序时,我必须使用两个jar:和。我使用的终端命令是: 使用将disco和sqlite jar添加到类路径中。 这将在目录中创建我的文件,而不会出现错误。这些JAR包含在目录中。 包含这部分代码,从头开始: 当我在终端中运行以下内容时,问题就开始了: 终端机显示我: 错误:出现JNI错误,请检查您的安装并在线程“ma

  • 因此,我正在运行Sierra,当我在终端输入“r”或“r”时,我得到“-bash:r:command not found”。如果我在终端中键入“which r”,我不会得到任何输出。 以下是“echo$path”的输出:/versions/2.7/bin://usr/local/bin://bin://bin://sbin://sbin://sbin://users/samuelcolon/.rv

  • 问题内容: 我如何在Linux终端上执行C#代码作为Shell脚本。 我有以下示例代码: 当我运行shell bash时,我使用。使用C#怎么做? 问题答案: 该(hashbang)标签是用来告诉使用哪种解释让你的Perl,PHP,庆典,SH等脚本将正确运行shell。 但是C#不是脚本语言,它旨在被编译成可执行格式。如果要使用C#,则至少需要安装编译器和运行时,最好是安装IDE(集成开发环境)来

  • 我想执行“vim”命令,“vim”命令用于在linux中打开一个新编辑器。“setup.csh”用QProcess打开文件“vi”editör。我想使用gui运行这个命令。 linux终端命令:“vim/home/intern2/elif/Project/setup.csh”。如何运行此命令gui 我在Qt中编写了以下命令,但在使用QProcess时它不起作用。 不幸的是,我给出了以下错误消息 错