Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在LinuxMint中使用OpenJDK连接到MySQL_Java_Mysql_Jdbc_Openjdk - Fatal编程技术网

Java 如何在LinuxMint中使用OpenJDK连接到MySQL

Java 如何在LinuxMint中使用OpenJDK连接到MySQL,java,mysql,jdbc,openjdk,Java,Mysql,Jdbc,Openjdk,我在尝试使用以下代码获取数据库连接时遇到问题: import java.lang.*; import java.sql.*; public class Demo { public static void main(String[] args){ try{ Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?" + "user=test&am

我在尝试使用以下代码获取数据库连接时遇到问题:

import java.lang.*;
import java.sql.*;

public class Demo {
    public static void main(String[] args){
        try{
            Connection conn = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test?" + "user=test&password=123456");
        }catch(SQLException ex){
            System.out.println("SQLException: " + ex.getMessage());
            System.out.println("SQLState: " + ex.getSQLState());
            System.out.println("VendorError: " + ex.getErrorCode());
        }catch(Exception ex){
            System.out.println("Exception: " + ex.getMessage());
        }
    }                                             
}
输出的错误消息为:

SQLException: No suitable driver found for jdbc:mysql://127.0.0.1:3306/test?user=test&password=123456
SQLState: 08001
VendorError: 0

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:186)
at Demo.main(Demo.java:9)
我的java版本如下:

java -> /usr/lib/jvm/java-6-openjdk-i386/bin/java
javac -> /usr/lib/jvm/java-6-openjdk-i386/bin/javac
javac.1.gz -> /usr/lib/jvm/java-6-openjdk-i386/man/man1/javac.1.gz
javadoc -> /usr/lib/jvm/java-6-openjdk-i386/bin/javadoc
javadoc.1.gz -> /usr/lib/jvm/java-6-openjdk-i386/man/man1/javadoc.1.gz
javah -> /usr/lib/jvm/java-6-openjdk-i386/bin/javah
javah.1.gz -> /usr/lib/jvm/java-6-openjdk-i386/man/man1/javah.1.gz
javap -> /usr/lib/jvm/java-6-openjdk-i386/bin/javap
javap.1.gz -> /usr/lib/jvm/java-6-openjdk-i386/man/man1/javap.1.gz
javaws -> /usr/lib/jvm/java-6-openjdk-i386/jre/bin/javaws
javaws.1.gz -> /usr/lib/jvm/java-6-openjdk-i386/jre/man/man1/javaws.1.gz
我真的不知道如何解决这个错误消息。数据库存在。用户名和密码已存在。我目前还没有向数据库添加任何表,但我认为这不是问题所在,因为我毕竟只是在建立连接

驱动程序安装在/usr/share/java下

-rw-r--r-- 1 root root   822524 10月 20  2011 mysql-connector-java-5.1.16.jar
-rw-r--r-- 1 root root   827942  9月  9 22:40 mysql-connector-java-5.1.21-bin.jar
lrwxrwxrwx 1 root root       35  9月  9 22:40 mysql-connector-java.jar -> mysql-connector-java-5.1.21-bin.jar
lrwxrwxrwx 1 root root       24 10月 20  2011 mysql.jar -> mysql-connector-java.jar
有人知道怎么修吗。。 谢谢你的帮助!
:)

确保项目库中有mysql连接器驱动程序(即jar文件)。当没有合适的驱动程序时,会出现此错误消息


您可以下载MySQL连接器驱动程序。

我也遇到了同样的问题,它帮助我找到了一个新的解决方案

注意:我使用的是Maven

所以我决定尝试这种依赖性:


在我添加到
pom.xml
并运行
mvn compile exec:java
之后,它工作了。

我安装了驱动程序,但仍然存在问题。。驱动程序位于/usr/share/java/
code
mysql-connector-java-5.1.16.jar mysql-connector-java-5.1.21-bin.jar mysql-connector-java.jar->mysql-connector-java-5.1.21-bin.jar mysql-connector-java.jar->mysql-java.jar您是否使用eclipse或netbeans之类的IDE?您的类路径似乎配置不正确。因此,请正确配置类路径。试着使用/usr/share/java/mysql-connector-java.jar我把mysql-connector-java-5.1.21-bin.jar放到/usr/lib/jvm/java-6-openjdk/jre/lib/ext,现在一切都好了!非常感谢。