我最近使用Amazon Web Services创建了一个帐户 - 希望能够访问postgresql中的24/7数据库。但是,关于如何使用直接java代码连接到postgresql数据库实例的文档很少。所以我的问题是,我将如何连接到我的数据库?请具体说明。一些.getConnection代码会有所帮助。然后再次。我想使用JAVA代码。没有扩展或工具包。
继承了一些连接代码:
try {
Properties props = new Properties();
//Uncomment the following line if using a keystore.
props.setProperty("ssl", "true");
props.setProperty("user", "BruceWayne");
props.setProperty("password", "password");
connection = DriverManager.getConnection("jdbc:postgresql://batcomputer.cu2oezud659w.us-west-2.rds.amazonaws.com:5432",props);
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
return;
}
我的猜测是问题出现在“连接”的位置。
这是终端的错误:
1291-121-25:SQLGUI student$ javac -cp postgresql2.jar:. JDBCExample.java
1291-121-25:SQLGUI student$ java -cp postgresql2.jar:. JDBCExample
-------- PostgreSQL JDBC Connection Testing ------------
PostgreSQL JDBC Driver Registered!
Connection Failed! Check output console
java.sql.SQLException: No suitable driver found for jdbc:postgresql://batcomputer.cu2oezud659w.us-west-2.rds.amazonaws.com:5432
at java.sql.DriverManager.getConnection(DriverManager.java:596)
at java.sql.DriverManager.getConnection(DriverManager.java:187)
at JDBCExample.main(JDBCExample.java:38)
任何帮助都非常感谢!!!
答案 0 :(得分:3)
如果没有"扩展或工具包",您无法轻松连接到PostgreSQL(或任何其他数据库)。具体来说,唯一明智的做法是use JDBC。 JDBC接口本身是Java的一部分,但连接到单个数据库需要特定于数据库的驱动程序。
对于PostgreSQL,那是PgJDBC。
所以你真的需要:
JDBC教程解释了如何使用JDBC。 PgJDBC文档解释了PostgreSQL特定位的详细信息,例如用于连接PostgreSQL的JDBC URL。它也包含示例代码。
在您确保PgJDBC在您的类路径上之后,连接(不对连接做任何事情)就像这样简单:
public void donothing() throws SQLException, ClassNotFoundException
{
Class.forName("org.postgresql.Driver");
String url = "jdbc:postgresql://localhost/test?user=fred&password=secret&ssl=true";
Connection conn = DriverManager.getConnection(url);
// Do stuff here
conn.close();
}