[英]PostgreSQL JDBC Driver not working for Heroku DB Connection
我有一個嘗試連接到Heroku數據庫的類:
public class ConnectionFactory {
public Connection getConnection() {
System.out.println("Conectando ao banco");
try {
return DriverManager.getConnection("connectionstring", "username", "password");
} catch (SQLException e) {
throw new RuntimeException(e);
}
}
}
它返回的是:
java.lang.RuntimeException:java.sql.SQLException:找不到適用於jdbc:postgres:// osnvehqhufnxzr:TS3Qt37c_HHbGRNKw3yk7g88fp@ec2-54-225-93-34.compute-1.amazonaws.com:5432 / d39mfq0odt56bv的驅動程序
我已經在項目的構建路徑中嘗試過postgresql-9.3-1103.jdbc3.jar和postgresql-9.4.1209.jre6.jar 。 我做錯了什么?
在JDBC URL中使用postgresql
,而不要使用postgres
。
另外,您需要通過運行以下命令來更改數據庫密碼(因為您公開發布了該密碼):
$ heroku pg:credentials DATABASE --reset
您需要先由類加載器加載驅動程序類:
Class.forName("org.postgresql.Driver");
Connection conn = DriverManager.getConnection(...);
解決方案很簡單, System.getenv(“ JDBC_DATABASE_URL”)在服務器中將其返回,並且它對登錄名和密碼進行了正確的配置。
public Connection getConnection() throws URISyntaxException, SQLException
{
String urlDB = System.getenv("JDBC_DATABASE_URL");
return DriverManager.getConnection(urlDB);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.