我正在尝试以下代码来在线连接托管在ElephantSQL上的数据库。
private static Connection getConnection() {
try {
Class.forName("org.postgresql.Driver");
}
catch (ClassNotFoundException e) {
System.out.println("Jar not found "+e.getMessage());
}
//dbUrl is given this way
String dbUrl = "jdbc:postgres://database:password@manny.db.elephantsql.com:5432/database";
String username = "database";
String password = "password";
try {
return DriverManager.getConnection(dbUrl,username,password);
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
但是我遇到以下错误:
java.sql.SQLException:未找到
的合适驱动程序
我从这里发现的类似问题中尝试了所有方法 Question 1 和 Question 2。
但是没有任何效果,我被困住了。我将不胜感激。
答案 0 :(得分:1)
As documented in the manual Postgres的URL的结构必须如下:
jdbc:postgresql://host:port/database
前缀jdbc:postgres
必须为jdbc:postgresql
,URL中的部分database:password@manny.db.elephantsql.com:5432
是错误的。很难说出主机名的确切含义,但是我想您需要使用:
jdbc:postgresql://manny.db.elephantsql.com:5432/database
答案 1 :(得分:-1)
似乎您的驱动程序jar文件不在classpath中。
其中一个选项是将驱动程序jar文件放在您项目的lib目录中,然后将jar文件添加到classpath(或eclipse中的buildpath)
您可以从给定的URL下载驱动程序文件 https://jdbc.postgresql.org/download.html